Jquery远程验证超时

时间:2010-01-18 04:17:35

标签: jquery validation timeout

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

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

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

由于

2 个答案:

答案 0 :(得分:2)

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

无论如何......看起来我可以使用

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

这将调用js函数handleerror(请求,错误) 如果ajax调用超时,或者服务器不可用,则取决于请求参数中的内容。

谢谢,

答案 1 :(得分:0)

我不确定,但你可以尝试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);
 }
});