2011-01-31 81 views
1

我想要添加一個onclick事件到我的表單按鈕來讓它們禁用,以避免重複發佈的功能。使用JS/Jquery後的禁用按鈕

<form> 
    <button onclick="disable(this)" type="submit">post</button> 
</form> 
<script> function disable(button){ $(button). ??? }</script> 

Ani的想法或提示?謝謝!

回答

4

該按鈕必須是input元素(如果您不通過JavaScript提交表單)。 A <button>元素沒有屬性type並設置它不起作用。
我也建議通過jQuery附上click處理程序:

<form> 
    <!-- ... --> 
    <input id="submit" type="submit" value="post" /> 
</form> 
<script type="text/javascript> 
    $('#submit').click(function() { 
     $(this).attr('disabled', true); 
    }); 
</script> 

參考:clickattr

0
<button onclick="this.disabled='disabled'" type...> 
+0

的onclick髒。附加處理程序好得多 – ThiefMaster 2011-01-31 15:55:07

+0

OP使用onclick – Mikhail 2011-01-31 16:04:50

+1

onclick是好的。它沒有錯。 – user113716 2011-01-31 16:05:40

2
$(button).attr('disabled', true); 
+1

如果有的話,應該是`$('button')`。 – 2011-01-31 15:59:14

0

如果你想只針對一個按鈕:

$('#buttonID').click(function(){ 
    $(this).attr('disabled', 'disabled'); 
}); 

如果你想有一個函數:

$('#myform').submit(function(){ 
    disableButton($('input[type=submit]', this)); 
}); 

function diableButton(bID){ 
    $(bID).attr('disabled', 'disabled'); 
} 

使用類似說它