динамически получать значения текстового поля, используя foreach jquery, который сам динамически создается - PullRequest
0 голосов
/ 01 февраля 2011

Как динамически получать значения из текстового поля ввода:

   $(":input").each(function(){alert($(this).text());});

Корпус:

Динамически имена столбцов берутся из источника xml и связываются следующим образом:

<script type="text/javascript" language="javascript">
    $(document).ready(function(){

            $.ajax({
                type: "GET",
                url: "GetColumnNames.xml",
                dataType: "xml",
                success: function(xml) {
                    var cWidth =  100/(xml.getElementsByTagName("Column")).length;
                    $(xml).find('Column').each(function(){
                        var cId = $(this).find('Id').text();
                        var cName = $(this).find('Name').text();
                        $('<td id='+cId+' width='+cWidth+'>'+cName+'</td>').appendTo('#page-wrap');
                        $('<label for='+cName+'>'+cName+'<input type="text" name='+cName+'id='+cName+' value="" class="text ui-widget-content ui-corner-all" /></label>').appendTo('#moreItems');
                    });
                }
            });
        });
    </script>

#moreItems является частью другого div, который является частью модального всплывающего окна, и я хочу получить доступ к значениям в нем,

Итак,

после проверки я иду по этому пути:

   if ( bValid ) {


                       $(":text").each(function(){
                        alert($(this).text());
                       });

}

Но я все еще не могу получить доступ к входным значениям.

Примечание:

Не похоже на:

Как получить значение текстового поля с помощью JQuery? , Jquery получить значения динамически создаваемых элементов , как получить заголовок и имя текстового поля с помощью jquery? ,

В поисках вашей помощи ..

Спасибо.

1 Ответ

2 голосов
/ 01 февраля 2011

Вам не хватает знака $.Это должно быть:

$(":text").each(function(){
    alert($(this).val());
});

Вы также должны попытаться сгенерировать правильно сформированный HTML с атрибутами, разделенными кавычками:

$('<td id="'+cId+'" width="'+cWidth+'">'+cName+'</td>').appendTo('#page-wrap');
$('<label for="'+cName+'">'+cName+'<input type="text" name="'+cName+'" id="'
    +cName+'" value="" class="text ui-widget-content ui-corner-all" /></label>')
    .appendTo('#moreItems');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...