解决方案 »

  1.   

    参考: 解決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();
                });
           });
      

  2.   

    现在不在工作机旁,无法验证,但是跟他说的好像有区别,我的这个可以验证,也可以回传,但是不触发imagebotton_click
      

  3.   

    不触发click事件,是通过什么事件提交的才得以回传的?
      

  4.   

    现象就是,验证部分都是好的,点击之后,验证通过后,就刷新页面了,就像没有后台onclick一样
      

  5.   

    自己网上搜罗了一下,找到了一个替代方法,最终还是通过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只是把鼠标的点击坐标重定向到目标处,有时间的童鞋可以试一下
      

  6.   

    现象就是,验证部分都是好的,点击之后,验证通过后,就刷新页面了,就像没有后台onclick一样
    可以的。我这里测试过了。你这里刷新页面了,但是没触发onclick事件,可能是你页面的onclick事件方法和后台代码的方法不一样,你在仔细检查下。
      

  7.   

    现象就是,验证部分都是好的,点击之后,验证通过后,就刷新页面了,就像没有后台onclick一样
    可以的。我这里测试过了。你这里刷新页面了,但是没触发onclick事件,可能是你页面的onclick事件方法和后台代码的方法不一样,你在仔细检查下。IE8及其以下是好的?反正我这不行,既然已经找到替代方法就结贴了