Woocommerce 2.6.2 добавляет отключенный атрибут для обновления кнопки корзины

Я использую WordPress 4.5.3 и Woocommerce 2.6.2 .

Код внутри woocommerce / cart / cart.php

  <input type="submit" class="button" id="update_cart_button" name="update_cart" value="<?php esc_attr_e( 'Update Cart', 'woocommerce' ); ?>" /> <?php do_action( 'woocommerce_cart_actions' ); ?> <?php wp_nonce_field( 'woocommerce-cart' ); ?> 

Что генерирует следующий html:

 <input type="submit" class="button" id="update_cart_button" name="update_cart" value="Winkelmand bijwerken" disabled=""> <input type="hidden" id="_wpnonce" name="_wpnonce" value="847e1da0f8"> <input type="hidden" name="_wp_http_referer" value="/winkelmand/"> 

Так странно, что внутри поля ввода добавлен атрибут «disabled». Когда я удаляю отключенное значение с помощью инструментов разработчика, я могу нажать кнопку, и тележка обновится правильно.

Поэтому я хочу удалить этот атрибут, что я пробовал:

Попытка 1

 <script> document.getElementById('update_cart_button').disabled = false; </script> 

Попытка 2

 <script> jQuery('#update_cart_button').prop('disabled', false); </script> 

Попытка 3

 <script> jQuery('#update_cart_button').removeAttr('disabled'); </script> 

но ни одно из решений не удаляет атрибут disabled.

Solutions Collecting From Web of "Woocommerce 2.6.2 добавляет отключенный атрибут для обновления кнопки корзины"

Вы можете попробовать под кодом-

 jQuery(document).ready(function() { jQuery( '.shop_table.cart' ).closest( 'form' ).find( 'input[name="update_cart"]' ).removeProp( 'disabled'); }); 

У меня была такая же проблема. Я думаю, что мой способ решить это не самый лучший, но он должен работать в течение времени, когда мы ждем патча, чтобы вы могли его услышать.

Войти в

WP-содержание / плагины / WooCommerce / активы / JS / интерфейс / cart.min.js

Это немного запутанно, но вы можете искать

.prop ( "отключено",! 0)}, input_changed

Измените ! 0 на a ! 1

Сохраните и загрузите файл после этого, кнопка снова будет работать нормально. есть одна проблема: функция, которая включает кнопку после изменения, была удалена, кнопка теперь всегда включена. Как будто я сказал, что временное решение после исправления не нуждается в дополнительных изменениях.

Приветствует Лукаса

Если вы хотите включить кнопку после изменения количества продуктов, вы можете сделать что-то вроде этого:

 $(document).on("click",".woocommerce-cart .control-prod", function (e) { $( ".woocommerce-cart .control-prod" ).click(function() { $('input[name="update_cart"]' ).removeProp( 'disabled'); }); }); 

где элемент .control-prod – это место, где вы меняете количество продуктов. Вы также можете использовать изменения, внесенные кликом.

Этот код работает для меня:

 jQuery (window) .on ('load', function () {
  jQuery ('.shop_table.cart') .find ('input [name = "update_cart"]') .prop ("disabled", false);
 });

Идеальное решение Уоллеса! Но на самом деле у него был недостаток, что он удалил свойство «disabled» только после двух кликов. Я обновил код, чтобы он работал eveytime, когда вы нажимаете + или –

Добавьте это в header.php между заголовками:

 <script> $(document).on("click",".bw-quantity", function (e) { $('input[name="update_cart"]' ).removeProp( 'disabled'); }); </script>