验证动态添加的文本框
Posted
技术标签:
【中文标题】验证动态添加的文本框【英文标题】:validate dynamically added textbox 【发布时间】:2011-02-10 12:59:21 【问题描述】:在下面的代码中,如何仅的空值,即 r_score1,r_score2.........
<script>
function validate()
//How to validate the r_Score.. textfields
$(document).ready(function()
for(var i=0;i< sen.length;i++)
row += '<input type="text" name="r_score'+i+'" id="r_score'+r_count+'" size="8" />';
$('#details').append(row);
);
</script>
<div id="details"><input type="text" name="score' id="score" size="8" /></div>
<input type="button" value="Save" id="print" onclick="javascript:validate();" />
【问题讨论】:
【参考方案1】:给文本框一个类名并使用类选择器
function validate()
var boxes = $("#details input:text.classname");
boxes.each(function()
var currentVal = $(this).val();
// do your validation here
);
【讨论】:
Rahul 让我问你这个,什么时候用 id 什么时候用 class? 由于您的 id 是动态生成的,因此您必须使用属性比较运算符来获取具有特定模式的所有元素。所以在这种情况下,我认为最好使用一个类来识别元素。 如果你知道确切的 id 然后使用 id 选择器,因为它是最快的。否则使用标签和类选择器的组合。【参考方案2】:$("#details input[name^='r_score']").each(function(nr)
if($(this).val() === "") alert("Field "+(nr+1)+" is empty");
);
【讨论】:
【参考方案3】:使用live event 处理程序来动态添加内容。
【讨论】:
以上是关于验证动态添加的文本框的主要内容,如果未能解决你的问题,请参考以下文章
求教 C#窗体中动态添加了Panel,再如何动态的在Panel中添加文本框控件呢?