私は人物モデルを持っています
public class Person
{
public int ID { get; set; }
[Required]
[Remote("UserNameExists", "People", "Username is already taken.")]
public string Name { get; set; }
[Required]
public string LastName { get; set; }
}
これは私の UserNameExists メソッドです
public JsonResult UserNameExists(string name)
{
bool exists = personRepository.GetPersonByName(name.Trim());
if (!exists)
return Json(true, JsonRequestBehavior.AllowGet);
return Json(string.Format("{0} is not avavfddvilable.", name),
JsonRequestBehavior.AllowGet);
}
Javascript を有効にすると問題なく動作しますが、JavaScript を無効にするとこのルールは適用されません...
どうしてこれなの?
助けてください。
予想される動作の編集:
msdnによると、Javacriptがなくてもこのルールを尊重する必要があります
- 必要に応じて、ブラウザでクライアント スクリプトを無効にし、ページを再度実行して、検証の制約に違反するデータを入力します。
無効なデータを含むフィールドを離れても、スクリプトが無効になっているため、検証エラーは表示されません。ASP.NET MVC は目立たない JavaScript を使用しているため、クライアント側のスクリプト エラーは表示されません。ただし、フォームを送信すると、サーバー側の検証が実行されます。(スクリプトを無効にしたブラウザーで Web アプリケーションをテストすることをお勧めします。)