jquery.validate不兼容imagebutton吗? jquery.validate 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 参考: 解決ASP.NET 的 LinkButton 與 ImageButton 無法觸發 jQuery Validation 的問題文中分析了原因是因为ImageButton控件生成的HTML中并没有调用提交表单的方法,所以需要手动添加,类似下面 $(document).ready(function() { $("#form1").validate({ rules:{ TextBox1: { required: true } }, messages:{ TextBox1 : "必填欄位" } }); $("#ImageButton1").click(function() { return $("#form1").valid(); }); $("#LinkButton1").click(function() { return $("#form1").valid(); }); }); 现在不在工作机旁,无法验证,但是跟他说的好像有区别,我的这个可以验证,也可以回传,但是不触发imagebotton_click 不触发click事件,是通过什么事件提交的才得以回传的? 现象就是,验证部分都是好的,点击之后,验证通过后,就刷新页面了,就像没有后台onclick一样 自己网上搜罗了一下,找到了一个替代方法,最终还是通过asp:button提交,不过把这个button动一下手脚,<asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="javascript:return confirm('确定修改吗?');" OnClick="Button1_Click" style="position:absolute;left:-999px;top:-999px;" /> <label id="Button1_lable" for="Button1" runat="server"> <img id="img" src="../images/保存.png" style="cursor:pointer;vertical-align:bottom;" disabled="" /> </label> 看到了吧,把它定位到屏幕外面去,然后用label的方法把它点击到,有童鞋就会说,为什么不直接display:none呢,经实测,IE8以下不响应display:none的元素,chrome是正常的,然后还有一点就是img要添加disabled="",否则点击无效,也是IE在作死,不过有点疑惑就是如果多个按钮都定位到同一位置,会不会出现label都点击的是同一个按钮呢,因为w3school上说label只是把鼠标的点击坐标重定向到目标处,有时间的童鞋可以试一下 现象就是,验证部分都是好的,点击之后,验证通过后,就刷新页面了,就像没有后台onclick一样可以的。我这里测试过了。你这里刷新页面了,但是没触发onclick事件,可能是你页面的onclick事件方法和后台代码的方法不一样,你在仔细检查下。 现象就是,验证部分都是好的,点击之后,验证通过后,就刷新页面了,就像没有后台onclick一样可以的。我这里测试过了。你这里刷新页面了,但是没触发onclick事件,可能是你页面的onclick事件方法和后台代码的方法不一样,你在仔细检查下。IE8及其以下是好的?反正我这不行,既然已经找到替代方法就结贴了 解析的字符串 谁知道怎么通过DataTable的记录一次插入到数据库中? net 转化问题 怎么样用ASP.NET做相册页面啊? 现大家都使什么样的WebGrid啊? 急急急!一个关于水晶报表注册码的问题! 文件上传研究 从基类继承来创建的程序在IIS中设置为虚拟目录时,找不到类型或命名空间名称“BasePage” 一个问了许多次都没人理会我的简单问题。 请问一个DataBinder.Eval()的问题 mvc linq 动态查询 提示此上下文仅支持基元类型或枚举类型。 IIS7发布网站问题
文中分析了原因是因为ImageButton控件生成的HTML中并没有调用提交表单的方法,所以需要手动添加,类似下面 $(document).ready(function() { $("#form1").validate({
rules:{
TextBox1: { required: true }
},
messages:{
TextBox1 : "必填欄位"
}
}); $("#ImageButton1").click(function() { return $("#form1").valid();
}); $("#LinkButton1").click(function() { return $("#form1").valid();
});
});
<label id="Button1_lable" for="Button1" runat="server">
<img id="img" src="../images/保存.png" style="cursor:pointer;vertical-align:bottom;" disabled="" />
</label>
看到了吧,把它定位到屏幕外面去,然后用label的方法把它点击到,有童鞋就会说,为什么不直接display:none呢,经实测,IE8以下不响应display:none的元素,chrome是正常的,然后还有一点就是img要添加disabled="",否则点击无效,也是IE在作死,不过有点疑惑就是如果多个按钮都定位到同一位置,会不会出现label都点击的是同一个按钮呢,因为w3school上说label只是把鼠标的点击坐标重定向到目标处,有时间的童鞋可以试一下
可以的。我这里测试过了。你这里刷新页面了,但是没触发onclick事件,可能是你页面的onclick事件方法和后台代码的方法不一样,你在仔细检查下。
可以的。我这里测试过了。你这里刷新页面了,但是没触发onclick事件,可能是你页面的onclick事件方法和后台代码的方法不一样,你在仔细检查下。IE8及其以下是好的?反正我这不行,既然已经找到替代方法就结贴了