Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
3 / 3 / 0
Регистрация: 17.12.2011
Сообщений: 543
1

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

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

Author24 — интернет-сервис помощи студентам
Здравствуйте!
В общем так, есть поле 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
Сообщений: 574
14.10.2017, 21:59 2
Цитата Сообщение от DDim1000 Посмотреть сообщение
Но, почему-то, как только стоит ввести нуль, а потом ввести какое-то число, то ajax всегда возвращает содержимое поля count, и заменяет любое введенное в input число содержимым count, пока не обновишь страницу.
код в студию
1
3 / 3 / 0
Регистрация: 17.12.2011
Сообщений: 543
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
3 / 3 / 0
Регистрация: 17.12.2011
Сообщений: 543
14.10.2017, 23:31  [ТС] 4
Цитата Сообщение от DDim1000 Посмотреть сообщение
Но, почему-то, как только стоит ввести нуль, а потом ввести какое-то число, то ajax всегда возвращает содержимое поля count, и заменяет любое введенное в input число содержимым count, пока не обновишь страницу.
Подскажите пожалуйста, почему так происходит?
Маленькое уточнение
Ни только если ноль введешь, возврашаеться содержимое поле count, но, и любое другое число.. Например, ввожу - 2, содержимое поле меняется, потом хочу 2 поменять на 7, все ровно возвращается 2.
Миниатюры
После вставки ответа ajax в input запроса, ответ ajax не изменяется  
0
90 / 40 / 17
Регистрация: 24.10.2015
Сообщений: 574
15.10.2017, 01:12 5
id_input_count - не валидный html атрибут, обычно используют для таких целей data- (data-id_input_count)
1
3 / 3 / 0
Регистрация: 17.12.2011
Сообщений: 543
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
Сообщений: 574
15.10.2017, 12:38 7
Цитата Сообщение от DDim1000 Посмотреть сообщение
А как потом к нему обращаться?
так получаешь его значение
Javascript
1
2
3
$(this).attr("data-id_input_count");
// или
$(this).data("id_input_count");
1
3 / 3 / 0
Регистрация: 17.12.2011
Сообщений: 543
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);
Миниатюры
После вставки ответа ajax в input запроса, ответ ajax не изменяется   После вставки ответа ajax в input запроса, ответ ajax не изменяется  
0
90 / 40 / 17
Регистрация: 24.10.2015
Сообщений: 574
17.10.2017, 03:06 9
DDim1000, а вы для input прописали хоть атрибут data?
1
17.10.2017, 03:06
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
Copyright ©2000 - 2024, CyberForum.ru