2012-02-14 20 views
0

私は、OnBlurイベント(キーアップとカットアンドペーストイベントをカバーする)を使用してajax検証を使用してフォーム要素を検証することを検討しています。 jquery Validation 1.9のように見えますが、確かにこの機能があります。誰でもコピー&ペーストのエントリに加えて、両方のkey'edエントリをカバーすることを確認できますか? Asp.net MVC2を使用してこれの任意の例ですか?私は...私の実装はもう少し複雑いつもの例ということで終わってもよいように、強くajax validation

はこれまでのところ、私はこの機能を試してみて、呼び出すするつもりです...ビューを入力し

public string ValidateHosFin(string hospitalFin) 
{ 
    if (!true) 
     return ""; 
    return "true"; 

} 

を持っていませんこれは、入力...

$("#temp1").validate({ 
     rules: { 
      HospitalFinNumber: { 
       required: true, 
       minlength: 6, 
       remote: { url: '<%:Url.Action("ValidateHosFin", "PatientACO")%>', data: { hospitalFin: $('#HospitalFinNumber').val() } 
       } 
      } 
} 

機能が本当にそれは...しかしこれまでのところ、私はjqueryの検証機能は、そうのように設定しているだけのテストです...ことになるだろう何のためだけのダミーです私が検証するものの要素IDはHospitalFinNumberです。 これは、キー入力イベントとコピー貼り付けイベントの両方で確実に動作するようにはできますか?

答えて

1

はい、これはonBlurイベントとコピー/貼り付けの両方のフィールドに適用されます。サーバー側の検証アクションを変更して、ActionResultとJSONを返すようにすることもできます。

public ActionResult ValidateHosFin(string hospitalFin) 
{ 
    // some validation logic 
    if (hospitalFin == "1234567") 
    { 
     return Json(true, JsonRequestBehavior.AllowGet); 
    } 
    return Json("invalid hospital fin", JsonRequestBehavior.AllowGet); 
} 

リモート検証ルールはもう1つの発言です。

$('form').validate({ 
    rules: { 
     HospitalFinNumber: { 
      required: true, 
      minlength: 6, 
      remote: function() { 
       return { 
        url: '<%= Url.Action("ValidateHosFin", "PatientACO") %>', 
        data: { hospitalFin: $('#HospitalFinNumber').val() } 
       }; 
      } 
     } 
    } 
}); 

をそしてここlive demoです:あなたは(おそらく空である)、それはテキストボックスは、ページが表示された時点で持っていた値になります関数またはサーバーに送信された値を返すようにする必要があります。

+0

Darin。このチェックは、送信時に再度行われますか?たとえば、何らかの理由で、ユーザーが送信する前にアクションの結果が異なる場合は、送信前にこのリモートチェックを行いますか? – SoftwareSavant