Я пытаюсь сделать автоматическое обновление корзины, когда клиент изменяет количество товара. Он уже работает, когда я НЕ вошел в систему, но странно, когда я вошел в систему, этот конкретный скрипт не будет работать.
JQuery:
var timeout;
jQuery('div.woocommerce').on('change', 'input.qty', function(){
if(typeof timeout !== undefined) clearTimeout(timeout);
timeout = setTimeout(function() {
jQuery("[name='update_cart']").prop("disabled", false);
jQuery("[name='update_cart']").trigger("click");
}, 1500);
});
Функции дочерней темы:
add_action( 'wp_enqueue_scripts', 'dp_cart_refresh_update_qty' );
function dp_cart_refresh_update_qty() {
if (is_cart()) {
wp_enqueue_script(
'cart_auto_refresh',
get_stylesheet_directory_uri() . '/js/cart_auto_refresh.js',
array('jquery')
);
}
}
Нет ошибки вывода на консоль, когда это произошло. Он просто ничего не делает, даже не срабатывает. Я пытался поместить console.log в некоторые части кода, ничего.
Я добавил несколько других jQuery с помощью этого точного метода, и все они работают нормально для администраторов и пользователей, вышедших из системы.
Любая помощь приветствуется. Спасибо.
EDIT:
Я проверил кнопку "update_cart", она есть на странице корзины, хотя я установил ее для отображения: нет
<input class="btn btn-alternative" name="update_cart" value="Update Shopping Cart" type="submit">