NeatUpload上传控件与js验证冲突
原因:NeatUpload控件上传文件提交表单时会重写WebForm_OnSubmit()方法,onSubmit触发时返回值永远为true,导致所有jquery验证无效
解决:在控件提交时对jquery进行验证,代码如下
1 <asp:Button ID="Button1" runat="server" Text="提交" OnClientClick="return CheckSubmitForm();" /> 2 function CheckSubmitForm() { 3 //判断jquery验证 4 if (!$(".formClass").valid()) { 5 return false; 6 } 7 return true; 8 }
-----------------------------------------------------已注释--------------------------------------------------------
解决:在页面最下方重写WebForm_OnSubmit()方法,函数中判断验证是否通过
注意:IE下还是有问题,未解决
1 //以为NeatUpload控件提交表单时会重写WebForm_OnSubmit方法,无论验证是否通过都会返回true 2 //所以只能在页面对下方重写WebForm_OnSubmit方法,确保验证正常运行 3 function WebForm_OnSubmit() { 4 //服务器验证控件,不通过返回false 5 if (typeof (ValidatorOnSubmit) == "function" && ValidatorOnSubmit() == false) { 6 return false; 7 } 8 //jquery.validate的验证 9 else if (!$(".formClass").valid()) { 10 return false; 11 } 12 //通过验证提交表单,同时允许NeatUpload上传文件 13 NeatUpload_OnSubmitForm_aspnetForm(); 14 return true; 15 }

浙公网安备 33010602011771号