我正在尝试使用以下循环来遍历我的网络表单上动态创建的控件:
for(x = 0; x <= count; x++) {
Stmt += $("#DDLColumns" + x).val();
switch($("#DDLConditional" + x).val()) {
case "is equal": Stmt += " = ";
break;
case "begins with": Stmt += " LIKE '%";
break;
};
Stmt += $("#WhereText" + x).val();
Stmt += ", ";
}
这是从val()函数输出的未定义和空值。我在这里做错了什么?
答案 0 :(得分:0)
确保在for循环之外有var Stmt
以避免作用域问题并在函数末尾返回Stmt。
答案 1 :(得分:0)
您可能需要考虑使用不同的选择器来获取prefix selector的所有DDLColumns。
根据DDLConditional选择的元素类型,您可以使用相同的样式选择器,但使用value属性。
伪代码:
$('[id|=DDLColumns').each( function(i,value){
$(value).find('[value|=is]').each( function(){
Stmt += " = ";
});
$(value).find('[value|=begins]').each( function(){
Stmt += " LIKE ";
});
// more stuff
});