[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Добавление input и работа с его содержимым
Страницы: 1, 2
Фибер Оптик
Здравствуйте.
У меня есть проблема с получением value из добавленного input.
Т.е пр нажатии на кнопку "Добавить" у меня появляется input.


$("#addInput").click(function(e){
e.preventDefault();
$('<input type="text" class="analogDop" name="analogDop[]" value="" style="width: 100px; margin-bottom: 0;"/><span style="display: inline; margin-left: 10px;"></span><br>').fadeIn('slow').appendTo('#analogRes');
});


Таких добавлений может быть много.

Мне нужно alert'ом вывести значение, которое ввёл пользователь в добавленное поле. При этом значения для каждого input alert должен выводить свои.

Соответственно, пробовал делать так:

$(".analogDop").keyup(function(){
var search = $(".analogDop").val();
alert(search);
});


Но ничего не выходит.
В дальнейшем планирую сделать ajax запрос, чтоб в тег <span style="display: inline; margin-left: 10px;"></span> у каждого input'a из базы подгружалось свои данные в зависимости от введённого пользователем значения input.
Но пока мне надо понять, как данные новых из input принять.

Спасибо за ответы.
Игорь_Vasinsky
какая не красивая реализация добавления элемента)
он же динамический, т.е. его по сути и нет в дом, а как JQuery работает с динамически созданными элементами?

наверно так ?

$("#addInput").on('click', function(e){....});


тока видимо .on() тут


$(".analogDop").keyup(function(){
var search = $(".analogDop").val();
alert(search);
});
:D

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Фибер Оптик
Спасибо за ответ.
Ну ты прости, если я тебя расстроил. )) Я плохо хорошо знаю Jquery.

Я поставил .on() как ты порекомендовал. Но ситуация не изменилась.
Игорь_Vasinsky
Фибер Оптик
покажи результат чтоли)

похож?

 $(".analogDop").on('keyup',function(){
var search = $(".analogDop").val();
alert(search);
});


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Фибер Оптик
Ну значит сделал так:
Добавление нового input (хоть не красиво как ты сказал, но работает :) )

$("#addInput").on('click',function(e){
e.preventDefault();
$('<input type="text" class="analogDop" name="analogDop[]" value="" style="width: 100px; margin-bottom: 0;"/><span style="display: inline; margin-left: 10px;"></span><br>').fadeIn('slow').appendTo('#analogRes');
});


Получение данных из input

$(".analogDop").keyup(function(){
var search = $(".analogDop").val();
alert(search);
});


alert'ом ничего не выводится
Игорь_Vasinsky
глянь предыдущий пост мой.

при "создании" элемента - .on() не нужен, это я с ходу запилил) - а когда будешь пытаться его использовать в keyupo - то нужен.

раньше ещё Live() выл, смотрю - depricated уже)

ещё раньше такой конструкцией бы пользовались

$.JQuery(".analogDop").val();


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Фибер Оптик
Т.е у меня получилось следующее:

$("#addInput").click(function(e){
e.preventDefault();
$('<input type="text" class="analogDop" name="analogDop[]" value="" style="width: 100px; margin-bottom: 0;"/><span style="display: inline; margin-left: 10px;"></span><br>').fadeIn('slow').appendTo('#analogRes');
});



$(".analogDop").on('keyup',function(){
var search = $(".analogDop").val();
alert(search);
});


alert не вылезает
Игорь_Vasinsky
а чё консоль то говорит? как без отладки отлаживаешь? на угад?)

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Фибер Оптик
да консоль молчит: выдаёт пустоту

$(".analogDop").on('keyup',function(){
var search = $(".analogDop").val();
conlose.log(search);
//alert(search);
});
Игорь_Vasinsky
  $(".analogDop").on('keyup',function(){
conlose.log($(this));
});


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Фибер Оптик
консоль молчит
Игорь_Vasinsky
фокус на поле и клацай по кнопам

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Kusss
может analogDop тоже динамически подгружается, потому и молчит.
  $(document).on('keyup','.analogDop',function(){
var search = $(".analogDop").val();
conlose.log(search);
//alert(search);
});
Фибер Оптик
Игорь_Vasinsky
)) ну это я понял.

Добавил input, набрал в нём значение, но консоль не отреагировала никак. Пусто

Kusss
такая же ситуация
Kusss
чертов копипаст, не проверил что скопировал.
var search = $(".analogDop").val();
//заменить на
var search = $(this).val();
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.