Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #41 (permalink)  
Старый 29.03.2017, 12:38
Аспирант
Отправить личное сообщение для dasser Посмотреть профиль Найти все сообщения от dasser
 
Регистрация: 17.06.2014
Сообщений: 56

laimas,
Сообщение от laimas Посмотреть сообщение
var f = $('#addcom').empty();
удаляет полностю поля формі и кнопку генерить, при єтом создавая новый inputы. а нужно (получается) очистить только сожержимое inputов формы и заменить их новыми данными

Последний раз редактировалось dasser, 29.03.2017 в 12:40.
Ответить с цитированием
  #42 (permalink)  
Старый 29.03.2017, 13:06
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Если честно, то просто офигеть... ) Данные то как то связываются.

Тогда так

$('input[type=text]:text').change(function (){
    $.post("ajax_all.php", { "num_contr" : this.value}, function(data){
        $.each($('#addcom input'), function() {
            this.value = data[this.name]
        })
    }, 'json');
});


Но с условием, что изначально в форме гарантированно есть поля с этими именами.

К тому же, в коллекцию '#addcom input' не должны попасть другие поля формы. Это можно обеспечить указав контекст, либо выборку по имени класса, либо взять срез и т.п. В общем все зависит от структуры формы.

Последний раз редактировалось laimas, 29.03.2017 в 13:09.
Ответить с цитированием
  #43 (permalink)  
Старый 29.03.2017, 13:13
Аспирант
Отправить личное сообщение для dasser Посмотреть профиль Найти все сообщения от dasser
 
Регистрация: 17.06.2014
Сообщений: 56

Сообщение от laimas Посмотреть сообщение
Но с условием, что изначально в форме гарантированно есть поля с этими именами.

К тому же, в коллекцию '#addcom input' не должны попасть другие поля формы. Это можно обеспечить указав контекст, либо выборку по имени класса, либо взять срез и т.п. В общем все зависит от структуры формы.
УРА, сработало! да, в коллекцию '#addcom input' попали и другие поля. а что значит ?
Цитата:
либо взять срез и т.п.
Ответить с цитированием
  #44 (permalink)  
Старый 29.03.2017, 13:18
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от dasser
а что значит ?
А это значит, что будет получена ошибка и не факт, что после этого будут выполняться скрипты.

Можно и проверять в цикле - если есть свойство в объекте data равное имени текущего поля, то меняем значение полю. Но если структура формы такова, что к примеру эти поля расположены в таблице, а другие нет, то можно получить только нужную коллекцию:

$.each($('#addcom table input'), function() {
.....

или по какому либо иному признаку.
Ответить с цитированием
  #45 (permalink)  
Старый 29.03.2017, 13:28
Аспирант
Отправить личное сообщение для dasser Посмотреть профиль Найти все сообщения от dasser
 
Регистрация: 17.06.2014
Сообщений: 56

Цитата:
что будет получена ошибка и не факт, что после этого будут выполняться скрипты
ясно.
Цитата:
$.each($('#addcom table input'), function() {
прекрасно заработало, то что нужно! спасибо Вам большое!
ps: вот что значит когда не владеешь азами JS. а чтобы понимать как нужно реализовать задуманое, мало перелистать документацию и Гугл, нужна практика с аналогичными примерами.
Ответить с цитированием
  #46 (permalink)  
Старый 29.03.2017, 13:30
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Среди возвращаемых сервером данных есть и поле идентификатора записи?
Ответить с цитированием
  #47 (permalink)  
Старый 29.03.2017, 13:34
Аспирант
Отправить личное сообщение для dasser Посмотреть профиль Найти все сообщения от dasser
 
Регистрация: 17.06.2014
Сообщений: 56

Цитата:
Среди возвращаемых сервером данных есть и поле идентификатора записи?
да
Ответить с цитированием
  #48 (permalink)  
Старый 29.03.2017, 13:38
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

$('input[type=text]:text') - этот селектор будет работать, но он излишен, либо type, либо :tetx

$('input:text')

Но добавляемые поля и есть текстовые, а это означает, что изменение в любом из них будет перегружать форму, то есть - запрос, обновление значений. Зачем?
Ответить с цитированием
  #49 (permalink)  
Старый 29.03.2017, 13:44
Аспирант
Отправить личное сообщение для dasser Посмотреть профиль Найти все сообщения от dasser
 
Регистрация: 17.06.2014
Сообщений: 56

Цитата:
Но добавляемые поля и есть текстовые, а это означает, что изменение в любом из них будет перегружать форму, то есть - запрос, обновление значений. Зачем?
в моем случае это необходимо, т.к. те значения которые подгрузились из базы - старые, которые могут мной редактироваться для пересчета сумы, которая. в своб очередь, и зависит от этого множества данных, но часть инпутов должна оставаться не тронутой, т.к. это реквизиты. В даный момент результат наших с вами действий меня очень даже устраивает!
Ответить с цитированием
  #50 (permalink)  
Старый 29.03.2017, 13:48
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Щелкнули в поле, удалили один символ, любой случайный щелчок вне поля запрос на обновление. Вот я о чем. Зачем?
Есть же форма, и редактирование, это отправка формы, а не по событию каждого изменения в поле, иначе можно и ошибок натворить.

Последний раз редактировалось laimas, 29.03.2017 в 13:56.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
передача переменных Лесной_Белк Общие вопросы Javascript 11 09.08.2018 16:06
Передача массива из php в гистограмму js Sling AJAX и COMET 9 09.02.2016 16:15
Передача массива из JS в PHP biohan AJAX и COMET 4 15.11.2012 18:24
Значение переменных из JavaScript в PHP pr43unknown Общие вопросы Javascript 3 18.01.2012 18:37
PHP, JavaScript, MySQL solomusic Серверные языки и технологии 14 18.12.2008 14:05