【问题标题】:Jquery remote validation timeoutjQuery远程验证超时
【发布时间】:2010-01-18 04:17:35
【问题描述】:

我正在尝试使用 jquery 验证来验证表单上的某些输入值。 在其中一种形式上,我必须远程调用服务器以检查是否需要 输入的值是否有效。 所以我有类似的东西:

$("#myform").validate({
rules: {
zip: {
  required: true,
  zip: true,
  remote: "check-zip.action"
  }
 }
});

现在对于一些非常不寻常的测试场景 - 我需要处理验证,当服务器不响应远程调用时。我通过一个javascript插件(google pagespeed)看到......即使服务器关闭,远程调用服务器以进行验证也会继续挂起......我很难弄清楚是否有超时或我可以使用的东西,以便在尝试连接所需的秒数后......我可以调用一个 javascript 函数来向用户显示......服务器不可用验证邮政编码.. 或其他一些有意义的信息。 我尝试添加超时:10000,但没有工作.. 非常感谢任何帮助。

谢谢

【问题讨论】:

    标签: jquery validation timeout


    【解决方案1】:

    非常感谢您的回答... 但我更多的是在验证期间寻找特定的远程调用。

    总之...看起来我可以使用

    $("#myform").validate({
    rules: {
    zip: {
      required: true,
      zip: true,
      remote: 
      {
       url:"check-zip.action",
       timeout:2000,
       error:handleerror
      }
     }
     }
    });
    

    这会调用js函数handleerror(request,error) 如果 ajax 调用超时,或者服务器不可用,这取决于请求参数中返回的内容。

    谢谢,

    【讨论】:

      【解决方案2】:

      我不确定,但您可以尝试 jQuery Ajax 与回调。

      示例如下:

      $.ajax({
       url: 'ajax/test.html',
       success: function(data) {
         $('.result').html(data);
         alert('Load was performed.');
       },
       error: function(obj, errorText, exception){
         alert('Error: ' + errorText);
       }
      });
      

      【讨论】:

        猜你喜欢
        • 2011-07-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-03-05
        • 2015-05-17
        • 2013-01-20
        • 2011-01-28
        • 1970-01-01
        相关资源
        最近更新 更多