2016-08-07 24 views
1

jQueryを使用してロードされたフィールドを検証しようとしています$().load();動的にロードされたhtml要素を変数に割り当てる

jqueryの検証プラグイン(jqueryvalidation.org)

に私のコードは次のとおりです。

var contactForm = $('#contact-form'); 
     contactForm.validate({ 
     rules: { 
      name: { 
       required: true, 
      }, 
      email: { 
       required: true, 
       email: true 
      }, 
      phone: { 
       required: false, 
       phoneUS: true 
      }, 
      message: { 
       required: true 
      } 
     } 
     }); 

残念ながら、それは負荷(を搭載した要素では動作しません)。

した後、私はいくつかの解決策が見つかりましたが、それらはすべてが変数に動的に追加入力を渡すことはない、「イベント」に目的としている検索をいくつかのグーグル:私も怒鳴るこのコードでそれに近づくことを試みた

$(document).on('click','#submit',function() {}); 

$('.home').click(function() { 
    $("#article").load("./ #article > *",function(){ 
     contactForm = $(this).find("#contact-form"); 
    }); 

もかかわらず、動作しません:(

私は任意の手がかりと助けに感謝します。

+0

ちょっとした注意:フォームに 'submit'イベントを使用しないでください。キーボード送信はそれをバイパスできます(ブラウザに依存します)。代わりに 'submit'イベントを使用してください。 –

答えて

0

は、動的にそれらを追加してください:

$("#contact-form").find('input').each(function() { 
    $(this).rules("add", { 
     required: true 
    }); 
}); 

・ホープ、このことができます。

+0

こんにちは、私は各入力を必要としたくない、フォームを見つけて特定のルールで構成された関数validate()を適用したい。 –

+0

OPにhtmlを追加し、動的に追加されたフィールドを指定してください。 –

関連する問題