web-dev-qa-db-ja.com

jQuery:ボタンがクリックされたかどうかを確認

フォームに2つのボタンがあり、どちらがクリックされたかを確認したい。 radioButtonsではすべて正常に機能します。

if($("input[@name='class']:checked").val() == 'A')

単純な送信ボタンでは、すべてがクラッシュします。

ありがとう!

20
hobok
$('#submit1, #submit2').click(function () {
   if (this.id == 'submit1') {
      alert('Submit 1 clicked');
   }
   else if (this.id == 'submit2') {
      alert('Submit 2 clicked');
   }
});
43
Kautil

これを使用できます:

$("#id").click(function()
{
   $(this).data('clicked', true);
});

Ifステートメントで確認してください:

if($("#id").data('clicked'))
{
   // code here 
}

詳細については、.data()関数のjQuery Webサイト にアクセスできます。

13
user5353190
jQuery(':button').click(function () {
    if (this.id == 'button1') {
        alert('Button 1 was clicked');
    }
    else if (this.id == 'button2') {
        alert('Button 2 was clicked');
    }
});

編集:-これはすべてのボタンで機能します。

5
Pranav
$('input[type="button"]').click(function (e) {
    if (e.target) {
        alert(e.target.id + ' clicked');
    }
});

これを少し微調整する必要があります(たとえば、アラートのIDの代わりに名前を使用します)が、この方法ではより汎用的な機能があります。

5
Yoeri

次のようなものを試してください:

var focusout = false;

$("#Button1").click(function () {
    if (focusout == true) {
        focusout = false;
        return;
    }
    else {
        GetInfo();
    }
});

$("#Text1").focusout(function () {
    focusout = true;
    GetInfo();
});
0