@denism300

Как передать значение из input в переменную без submit?

Есть задача передать данные из input в переменную для дальнейшей обработки без использования submin и перезагрузки страницы. Делаю на Ajax, однако, не работает.
Код формы:
<form action="<?php echo(esc_url($product->add_to_cart_url())); ?>" class="cart" method="post" enctype="multipart/form-data">
		<button class="qty-minus" type="button" value="-" onClick="change('qty-val',0,10, -1);"><i class="fa fa-minus" aria-hidden="true"></i></button>
		<input id="qty-val" type="text" step="<?php echo esc_attr($step); ?>" <?php if (is_numeric($min_value)) : ?>min="<?php echo esc_attr($min_value); ?>"<?php endif; ?> <?php if (is_numeric($max_value)) : ?>max="<?php echo esc_attr($max_value); ?>"<?php endif; ?> name="<?php echo esc_attr($input_name); ?>" value="<?php echo esc_attr($input_value); ?>" title="<?php _ex('Qty', 'Product quantity input tooltip', 'styled-store') ?>" class="input-text qty text" size="4" />
		<button class="qty-plus" type="button" value="+" onClick="change('qty-val',0,10,1);"><i class="fa fa-plus" aria-hidden="true"></i></button>
</form>


Скрипт:
function change(objName, min, max, step) {
	var obj = document.getElementById(objName);
	var tmp = +obj.value + step;
	if (tmp<min) tmp=min;
	if (tmp>max) tmp=max;
	obj.value = tmp;
	jQuery.ajax({
		url : window.location,
		type: 'POST',
		data: {qty : obj.value},
		success: function(data){
			alert(data)
		}
	});
}

success возвращает вместо числа из формы исходный код страницы (см. скрин)
5bd07248d3257748337030.png
  • Вопрос задан
  • 1307 просмотров
Пригласить эксперта
Ответы на вопрос 1
gaz12
@gaz12
Делаю сайты
jQuery.ajax({
    url : window.location,

в url сейчас указана текущая страница, она и возвращается.
Нужно указать урл страницы-обработчика, которая уже будет возвращать результат.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
23 нояб. 2024, в 00:16
2000 руб./за проект
22 нояб. 2024, в 23:55
3000 руб./за проект
22 нояб. 2024, в 22:26
3500 руб./за проект