Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
1 / 1 / 0
Регистрация: 17.12.2011
Сообщений: 389
1

После вставки ответа ajax в input запроса, ответ ajax не изменяется

14.10.2017, 21:52. Просмотров 1245. Ответов 8
Метки нет (Все метки)

Здравствуйте!
В общем так, есть поле input, есть таблица с полем count. Задача: изменить содержимое поле count по средством ajax, но при условии что введенное число больше нуля, а иначе возвратить ajax содержимое поле count, и вставить в этот же input.
Но, почему-то, как только стоит ввести нуль, а потом ввести какое-то число, то ajax всегда возвращает содержимое поля count, и заменяет любое введенное в input число содержимым count, пока не обновишь страницу.
Подскажите пожалуйста, почему так происходит?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.10.2017, 21:52
Ответы с готовыми решениями:

Обработка ответа после пост-запроса (Ajax)
Разбираюсь с ajax-функциями jQuery и возник вот такой вопрос, ответ на который никак найти не могу:...

Вызов ajax запроса после обработки другого ajax запроса
Добрый день. По нажатию на кнопку происходит ajax запрос. Сервер возвращает true или false. Если...

Верните мне ответ в AJAX пожалуйста! ответ AJAX из php
Доброе время суток дорогие друзья :) На вас надежда как всегда, уверен поможете, есть форма она...

Анимация ожидания ответа ajax запроса
Можно ли сделать анимацию загрузки такую как на этом видео: тыЦ это анимация из samsung touchwiz...

8
90 / 40 / 17
Регистрация: 24.10.2015
Сообщений: 536
14.10.2017, 21:59 2
Цитата Сообщение от DDim1000 Посмотреть сообщение
Но, почему-то, как только стоит ввести нуль, а потом ввести какое-то число, то ajax всегда возвращает содержимое поля count, и заменяет любое введенное в input число содержимым count, пока не обновишь страницу.
код в студию
1
1 / 1 / 0
Регистрация: 17.12.2011
Сообщений: 389
14.10.2017, 22:19  [ТС] 3
Цитата Сообщение от rodigy Посмотреть сообщение
код в студию
input:
PHP
1
<input id_input_count="'.$row["cart_id"].'" id="specified_count_ininput'.$row["cart_id"].'" class="count-input" maxlength="3" type="text" value="'.$row["cart_count"].'" oninput="this.value = this.value.replace(/\D/g, "")" />
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
     $(".count-input").keyup(function(event) {      
                  var id_input_count = $(this).attr("id_input_count"); 
             var incount = $("#specified_count_ininput"+id_input_count).val();           
                $.ajax({            
                   url: "count.php",type: "POST",
                   data: "id="+id_input_count+"&count="+incount,
                   dataType: "html", 
                   cache: false,
                   success: function(data){
            
                       $("#specified_count_ininput"+id_input_count).val(data);
 
                             
                    
                }     
             })  
        }
count.php:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
    $id = clear_string($_POST["id"]);
      $result = mysql_query("SELECT * FROM cart WHERE cart_id ='$id' AND cart_ip ='{$_SERVER['REMOTE_ADDR']}'",$link); 
     if (mysql_num_rows($result) > 0)
      {         
        $row = mysql_fetch_array($result);
        $new_count = (int)$_POST["count"];
        
        if($new_count > 0)
         {
            $result = mysql_query("UPDATE cart SET count='$new_count' WHERE cart_id ='$id' AND cart_ip ='{$_SERVER['REMOTE_ADDR']}'",$link); 
            echo $new_count;
                                     
         }
       else 
         { 
           echo $row["cart_count"];
         }  
      }
0
1 / 1 / 0
Регистрация: 17.12.2011
Сообщений: 389
14.10.2017, 23:31  [ТС] 4
Цитата Сообщение от DDim1000 Посмотреть сообщение
Но, почему-то, как только стоит ввести нуль, а потом ввести какое-то число, то ajax всегда возвращает содержимое поля count, и заменяет любое введенное в input число содержимым count, пока не обновишь страницу.
Подскажите пожалуйста, почему так происходит?
Маленькое уточнение
Ни только если ноль введешь, возврашаеться содержимое поле count, но, и любое другое число.. Например, ввожу - 2, содержимое поле меняется, потом хочу 2 поменять на 7, все ровно возвращается 2.
0
Миниатюры
После вставки ответа ajax в input запроса, ответ ajax не изменяется  
90 / 40 / 17
Регистрация: 24.10.2015
Сообщений: 536
15.10.2017, 01:12 5
id_input_count - не валидный html атрибут, обычно используют для таких целей data- (data-id_input_count)
1
1 / 1 / 0
Регистрация: 17.12.2011
Сообщений: 389
15.10.2017, 07:40  [ТС] 6
Цитата Сообщение от rodigy Посмотреть сообщение
...обычно используют для таких целей data- (data-id_input_count)
А как потом к нему обращаться? Так и писать, data-id_input_count?
Javascript
1
  var id_input_count = $(this).attr("id_input_count");
Или вот так?:
Javascript
1
  $("#specified_count_ininput"+data-id_input_count).val(data);
0
90 / 40 / 17
Регистрация: 24.10.2015
Сообщений: 536
15.10.2017, 12:38 7
Цитата Сообщение от DDim1000 Посмотреть сообщение
А как потом к нему обращаться?
так получаешь его значение
Javascript
1
2
3
$(this).attr("data-id_input_count");
// или
$(this).data("id_input_count");
1
1 / 1 / 0
Регистрация: 17.12.2011
Сообщений: 389
16.10.2017, 15:28  [ТС] 8
Почему-то когда пытаюсь вывести в console переменную id_input_count , чтоб проверить что она содержит, console выдает ошибку: undefined.
Javascript
1
2
3
4
             var id_input_count = $(this).data("id_input_count");
             var id_div_tov = id_input_count;
             var incount = $("#specified_count_ininput"+id_input_count).val();           
             console.log(id_input_count);
0
Миниатюры
После вставки ответа ajax в input запроса, ответ ajax не изменяется   После вставки ответа ajax в input запроса, ответ ajax не изменяется  
90 / 40 / 17
Регистрация: 24.10.2015
Сообщений: 536
17.10.2017, 03:06 9
DDim1000, а вы для input прописали хоть атрибут data?
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.10.2017, 03:06

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Ajax ожидание ответа от асинхронного запроса
Доброго времени суток. Возник вопрос. А знаний и гугла не хватает. Суть задачи: ...

Вывод ответа php из ajax запроса
Всем доброго вечера. Я программист С++ и к яве и php имею не много отношения (хотя с php и html я...

Передача данных из ajax запроса к бд в input
Здравствуйте. Есть select со списком кафедр. Нужно, чтобы при выборе кафедры в один input из базы...

Как можно сделать живой поиск вывести ответ на input в javascript + ajax?
есть пример кода &lt;script&gt; function showResult(str) { if (str.length==0) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.