2014-02-18 63 views
1

HTML:錯誤獲取點擊的按鈕的ID的形式

<form id="myForm" > 
    <input id="oknovo" type="submit" value="OK & Novo" /> 
    <input id="okfechar" type="submit" value="OK & Fechar" /> 
</form> 

JS:

$("#myForm").submit(function(event){ 
    var botao=$("input[type=submit][clicked=true]").id; 
    alert(botao); 
}); 

如何識別哪個按鈕被點擊提交表單?

我還檢查this

並試用了此:

var botao=$("input[type=submit][clicked=true]").val(); 

但我總是得到 「未定義」。

+1

$(「input [type = submit] [clicked = true]」)。attr('id'); –

+0

同樣的結果,你可能會在這裏看到一個生動的例子:http://jsfiddle.net/nuno/3fJ3r/ –

+0

如果你願意提交表單在php中處理,你可以在php中檢查它非常簡單。因此,你將不得不給予submitButtons每個名稱,然後可以檢查php中的價值... – Martin

回答

2

試試這個:

var buttonID; 

$("#myForm input[type=submit]").on('click', function() { 
    buttonID = $(this).attr('id'); 
}); 

更新:

我已經更新了你的代碼,增加了一個小例子here。似乎現在工作正常。

+0

感謝您在函數外部定義buttonID ;-D –

+0

無論我在哪裏定義變量,我都無法使它工作.. http://jsfiddle.net/nuno/3fJ3r/4/ –

+0

我已更新用新鏈接回答。我希望這有幫助。 –

1

試試這個:

$("input[type=submit]").click(function(event){ 
    alert($(this).attr('id')); 
}); 

表單提交,當您單擊input type="submit"

這裏是Fiddle

+0

它似乎在工作(http://jsfiddle.net/nuno/3fJ3r/1/)。這也會提交表格,對吧? :-D –

+0

@NunoNogueira yes –

+1

如果你只是想要你可以使用'this.id'的ID,它會更好的性能 – Pete

0

您可以使用.prop()獲得點擊的元素

的id

試試這個:

$("input[type=submit]").click(function(event){ 
    alert($(this).prop('id')); 
});