我找到了解决该问题的方法。我在此页面上遇到的主要问题之一是启用了Ajax,因此我需要验证动态创建的控件。
我的解决方案及其工作正常,在创建控件时,我向其添加了输入属性以将其标记为必需,而将另一个属性标记为它是要验证的字段?
使用Javascript,我会遍历所有带有属性“动态控制”的输入标签,并基于“验证属性”来验证它与否。简单吧?
示例代码:在创建控件时,将其标记如下
txtBox.Attributes.Add("Type", "T"); // Type of control.txtBox.Attributes.Add("IsKeyField", "Y"); // Is dynamically created field.txtBox.Attributes.Add("IsMandatory", "Y"); // Is mandatory or not?Javascript代码
var inputControls = document.getElementsByTagName("input"); for(var i=0 ; i<inputControls.length ; i++) { if ( inputControls[i].getAttribute("IsKeyField") == "Y" ) { if (inputControls[i].getAttribute("Type") == "T" || (inputControls[i].getAttribute("Type") == "C")) { if(inputControls[i].getAttribute("IsMandatory") == "Y") { if(inputControls[i].value == "") { errorMsg += "n" + inputControls[i].getAttribute("KeyField_Name") + " is required."; isValidated = false; } } } } }当然,您可以在单击所需按钮的同时调用该代码。
btnUpload.Attributes.Add("onClick", "javascript:if(!ValidateMandatoryFields()) return false;");


