Тайм-аут удаленной проверки Jquery - PullRequest
1 голос
/ 18 января 2010

Я пытаюсь использовать проверку jquery для проверки некоторых входных значений в форме. В одной из форм я должен сделать удаленный вызов на сервер, чтобы проверить, требуется ли введенное значение является действительным или нет. Итак, у меня есть что-то вроде:

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

Теперь для некоторого очень необычного сценария тестирования - мне нужно обработать проверку, когда сервер не отвечает на удаленный вызов. Я вижу через плагин javascript (google pagespeed) ... что удаленный вызов на сервер для проверки продолжает зависать ... даже если сервер не работает. Мне трудно выяснить, есть ли тайм-аут или что-то, что я мог бы использовать, чтобы после попытки подключения в течение желаемого количества секунд .. Я мог вызвать функцию javascript, чтобы показать пользователю, что ... сервер был недоступен для подтвердите почтовый индекс .. или какое-либо другое значимое сообщение. я попытался добавить тайм-аут: 10000, но не сработало .. Любая помощь с благодарностью.

Спасибо

Ответы [ 2 ]

2 голосов
/ 21 января 2010

Большое спасибо за ваш ответ ... но я больше искал конкретный удаленный вызов во время проверки.

В любом случае ... похоже, я мог бы использовать

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

иэто вызовет функцию handlesror js (request, error), если время ожидания ajax истекло или сервер недоступен, в зависимости от того, что возвращается в параметре запроса.

Спасибо,

0 голосов
/ 18 января 2010

Я не уверен, но вы можете попробовать 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);
 }
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...