0

以下のように2つのボタンがあります。

<input id="btn_sendmsg" name="send_message" type="button" value="SEND MESSAGE 1" />
<input id="btn_sendmsg" name="send_message" type="button" value="SEND MESSAGE 2" />

ボタンをクリック"SEND MESSAGE 1"すると、正しく機能して発火しますが、"SEND MESSAGE 2"ボタンがまったく発火しません。何が問題なのですか?

$("#btn_sendmsg").live('click', function(){
    parameters = $('#form1').serialize();
    alert(parameters);
});

ありがとう。

4

4 に答える 4

0

異なる要素に同じ ID を割り当てないでください。代わりに、クラスごとに割り当てることができます。

<input class="btn_sendmsg" name="send_message" type="button" value="SEND MESSAGE 1" />
<input class="btn_sendmsg" name="send_message" type="button" value="SEND MESSAGE 2" />

jqueryでループ演算子を使用して、イベントを割り当ててみてください。

$(".btn_sendmsg").each(function(){
    $(this).live('click',function(){
       parameters = $('#form1').serialize();
       alert(parameters);
    });
});
于 2013-08-16T04:40:13.760 に答える
0

同じ ID を持つ両方のボタンがあります。ID を 2 つの異なる名前に変更するか、同じクラスの一部にします。

IDが違う

<input id="btn_sendmsg1" name="send_message" type="button" value="SEND MESSAGE 1" />
<input id="btn_sendmsg2" name="send_message" type="button" value="SEND MESSAGE 2" />

//Add a click handler for each id
$("#btn_sendmsg1").live('click', function(){
    parameters = $('#form1').serialize();
    alert(parameters);
});

$("#btn_sendmsg2").live('click', function(){
    parameters = $('#form1').serialize();
    alert(parameters);
});

同じクラス

<input id="btn_sendmsg1" name="send_message" type="button" class="btn" value="SEND MESSAGE 1" />
<input id="btn_sendmsg2" name="send_message" type="button" class="btn" value="SEND MESSAGE 2" />

//This click handler is attached to the class
$(".btn").live('click', function(){
    parameters = $('#form1').serialize();
    alert(parameters);
});
于 2013-08-16T04:35:23.973 に答える
0

要素の ID はドキュメント内で一意である必要があります。同じキーを複数の要素に関連付ける場合は、代わりにクラスを使用してください。

同じ ID を持つ複数の要素がある場合、id-selectorは常に ID を持つ最初の要素のみを返します。

<input class="btn_sendmsg" name="send_message" type="button" value="SEND MESSAGE 1" />
<input class="btn_sendmsg" name="send_message" type="button" value="SEND MESSAGE 2" />

それから

$(".btn_sendmsg").live('click', function(){
    parameters = $('#form1').serialize();
    alert(parameters);
});
于 2013-08-16T04:35:48.900 に答える
0
<input class="btn_sendMsg name="send_message" type="button" value="SEND MESSAGE 1" />
<input class="btn_sendMsg name="send_message" type="button" value="SEND MESSAGE 2" />

$('input.btn_sendMsg').click(function(){
      //code here         
});

$(this)クリックされた要素を取得するために使用します。

于 2013-08-16T04:39:40.743 に答える