2009-08-08 6 views
1

Я не уверен, что я делаю неправильно. Я использую плагин Jquery.Validate и имеет дистанционное поле, так что я сделал это:Jquery Validation удаленная проверка не работает

$("#mainForm").validate(
    { 
     rules: 
     { 
      UserName: 
      { 
       required: true 
       ,remote: "Test" 
      } 
     ,messages: 
     { 
      UserName: 
      { 
       remote: "UserName has already been chosen. Please choose another one" 
      } 
     } 

    } 

Требуемые отлично работает. У этого пульта есть проблема. Я использую ASP.NET MVC и путь является правильным - он попадает мой метод

public bool Test(string userName) 
{ 
    return false; 
} 

возвращает ложь согласно поджигатель пока jquery.validate не загнуться Я использую версию 1.5.5 jquery.validate. и jquery 1.3.2

Что я пропустил?

ответ

2

Я тоже поймал этот.

Вы должны вернуть объект JSON с истинным или ложным, смотрите ниже:

public ActionResult IsValidField() 
    { 
     String the_field = httpContextService.Request["Field_To_Test"]; 

     if (the_field == another_value) 
      return Json(true); 
     else 
      return Json(false); 
    } 
+0

Это действительно перепутались. Я обнаружил, что в jQuery после нескольких часов борьбы dataFilter, который вернул план boolean true/false, был отклонен методом $ .parseJSON. Теперь решение кажется возвратом $ .toJSON (true) или возвращает $ .toJSON (false) – sakhunzai

Смежные вопросы