Новые форумы для: пользователей, администраторов, математиков и филологов.
0
3

Здравствуйте. У меня есть много инпутов. Как выбрать все инпуты, текст в которых был изменен с клавиатуры (чтобы потом занести их в массив)?

задан 22 Фев 14:19

alex_90's gravatar image

alex_90
55317
100% принятых

изменен 22 Фев 19:51

Angry%20Bird's gravatar image

Angry Bird
609310

3
$('input').change(function(){$(this).addClass('user-changed');});
$('input.user-changed').each(function(){/*...*/});
ссылка

отвечен 22 Фев 14:30

ling's gravatar image

ling
10.6k110

1

Надо повесить обработчик на изменение:

$(":input").change(function(){
  $(this).data("changed",true);    
});

Получаем массив измененных:

var changedInputs = $(":input").grep(function(input){
  return $(input).data("changed");
});

И не забыть при reset'е и submit'е (если submit идет ajax'ом) формы удалить флаги:

$(":input").each(function(){
  $(this).removeData("changed");    
});

Как-то так...

ссылка

отвечен 22 Фев 14:36

Yura%20Ivanov's gravatar image

Yura Ivanov
3.0k8

0

Можно попробовать фиксировать ID инпута, если его изменяют. А проще выбрать все и каждый сравнивать с первоначальным значением (естественно первоначальное значение надо где-то зафиксировать, в БД или хотя бы в input:hidden).

ссылка

отвечен 22 Фев 14:30

DemoS's gravatar image

DemoS
2.8k18

Ваш ответ

Если вы не нашли ответ, задайте вопрос.

Здравствуйте

ХэшКод - это совместно редактируемый форум вопросов и ответов для начинающих и опытных программистов.

Присоединяйтесь!

отмечен:

×1,561
×756
×32
×6

задан
22 Фев 14:19

показан
136 раз

обновлен
22 Фев 19:51

Отслеживать вопрос

по почте:

Зарегистрировавшись, вы сможете подписаться на любые обновления

по RSS:

Ответы

Ответы и Комментарии