0

Web ページに約 20 のフォームがあります

<form id="post_comment_1" class="post_comment" action="cmt.php" method="post">

// form inputs

</form>

.......

<form id="post_comment_20" class="post_comment" action="cmt.php" method="post">

// form inputs

</form>

ここで、javascript を使用してフォームの送信を追跡する必要があります。ID(post_comment)を持つフォームが1つしかない場合、このように追跡できます

$("#post_comment").submit(function(event){

    // function statements    

});

しかし、1 ページに約 20 のフォームがあるため、これを行うことはできません。フォーム送信ごとにイベントリスナーを設定する効率的な方法は何ですか??

4

2 に答える 2

4
$('.post_comment').submit(function(evt) {})
于 2013-04-22T06:48:03.293 に答える
1

これで属性セレクターを^試すと、指定された文字列で始まるすべての ID が選択されます。

 $("form[id^='post_comment'").submit(function(event){
      .....

またはクラス

$('.post_comment').submit(function(event) {
  .....  

クラスセレクターは属性セレクターよりも優れていて高速です..だから私はクラスセレクターを使います..(フォームにクラスを追加できる場合)

ドキュメントから

attributeStartsWith セレクター : ただし、クラス セレクターを使用するよりも遅くなるため、可能であればクラスを利用して要素をグループ化します。

于 2013-04-22T06:52:41.887 に答える