2017-07-11 4 views
1

ウェブサイト開発中に興味深い問題が発生しました。ページの多くの他のフォームから1つのフォームを選択し、データを入力してデータを保存します

<form id="form'.$mailing_recipients[$i][recipient_id].'"><td> 
       <input type="text" class="text_note" name="note_text" value="'.$mailing_recipients[$i][recipient_note].'"> 
       <button type="submit" class="btn_note save" id="'.$mailing_recipients[$i][recipient_id].'" value="'.$mailing_recipients[$i][recipient_id].'">Save</button></td> 
     </form> 

彼らは、フロントエンドに次のようになります。:

<form id="1"><td> 
       <input type="text" class="text_note" name="note_text" value="'.$mailing_recipients[$i][recipient_note].'"> 
       <button type="submit" class="btn_note save" id="'.$mailing_recipients[$i][recipient_id].'" value="'.$mailing_recipients[$i][recipient_id].'">Save</button></td> 
     </form> 

は、それらのいずれかでテストを保存するには、私はjQueryの使用:私はPHPでレンダリングされている程度千形態を有する

jQuery("#form4").submit(function (event) { 
      event.preventDefault(); 
      jQuery.ajax({ 
        type: "POST", 
        url: "http://www.someurl/admin-ajax.php", 
        data: { 
       action: "note_save", 
         id: event.target.id, 
         note_text: $(this).serialize() 
        }, 
        success: function (response) { 
       console.log("AJAX response : ", response); 
      } 
       }); 
      }); 

問題はjQueryが私が望むIDを持つフォームを選択しないということです。だから、私はそれにテキストを持っているフォームを選ぶための普遍的な方法が必要です。あなたは一般的なセレクタを使用して、選択したフォームのid属性を取得することができます任意の形式のIDを取得するために

+0

あなたは 'IDとしてform4'を複製していますか? –

+0

答えがあなたの問題を解決した場合は、答えを受け入れることを検討してください。 http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-workがここに戻って、ティック/チェックマークで緑色に変わるまで同じことを行う方法があります。これはコミュニティに通知し、解決策が見つかりました。そうでなければ、他の人は質問がまだ開いていると思うかもしれませんし、(もっと)回答を投稿したいかもしれません。あなたはポイントを獲得し、他の人はあなたを助けることを奨励されます。 * Welcome to Stack!* –

+0

あなたのセレクタとして 'jQuery(" form#4 ")。submit'を試してみてください。 – gattsbr

答えて

2

jQuery("form").submit(function (event) { // use 'form' in the selector 
    var formID = $(this).attr('id'); // get the id of the form 
+0

ありがとうございました。すべてが完璧に動作します! –

関連する問題