如何从输入文本框动态检索值:
$(":input").each(function(){alert($(this).text());});
案例:
动态列名称取自xml source&以这种方式绑定:
<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());
});
}
但我仍然无法访问输入值。
注意:
与以下内容不相似:
How do I retrieve a textbox value using JQuery?, Jquery retrieve values of Dynamically created elements, how do i retrieve a textbox's title and name using jquery?,
寻求你的帮助..
感谢。
答案 0 :(得分:2)
您错过了$
标志。它应该是:
$(":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');