在我的應用程序中,我需要禁用按鈕,一旦它被點擊,以便用戶不應單擊多次。應用程序是MVC ASP.NET我已經在普通的asp.net應用程序中完成了這項工作。 我嘗試下面的代碼行,但它不工作單擊按鈕後禁用按鈕
在此先感謝
編輯 我怎樣才能實現這個使用JavaScript?
在我的應用程序中,我需要禁用按鈕,一旦它被點擊,以便用戶不應單擊多次。應用程序是MVC ASP.NET我已經在普通的asp.net應用程序中完成了這項工作。 我嘗試下面的代碼行,但它不工作單擊按鈕後禁用按鈕
在此先感謝
編輯 我怎樣才能實現這個使用JavaScript?
<button type="button" onclick="this.disabled = 'disabled';">Click Me!</button>
雖然Button Web控件呈現爲提交:
<input type="submit" onclick="this.disabled = 'disabled';" value="Submit" />
你使用jQuery來禁用或隱藏,甚至按鈕@prakash?
如果你的按鈕的ID是「btnClickMe」,那麼下面的jQuery將完成這項工作。
$("#btnClickMe").hide();
您還可以使用jQuery設置disbaled屬性;
$("#btnClickMe").attr("disabled","disabled");
上面的一個未經測試,但應該工作。
NUP它不工作..它禁用按鈕,但表單不提交 – batwadi 2010-02-24 05:32:10
我發現,IE8(我不確定其他版本的IE),你不能提交表單,如果你禁用點擊事件按鈕。所以我想出了一個替代解決方案。隱藏點擊的按鈕並放置一個新的禁用按鈕。下面的代碼:
$().ready(function() {
$("someButtonSelector").click(function() {
$(this).hide();
$(this).after('<input type="button" disabled="disabled" value="' + $(this).val() + '" />');
return true;
});
});
謝謝,它爲我工作的解決方法! – 2013-03-06 13:21:56
你可以試試這個:
onclick="if (this.getAttribute('clicked') == '1') { return false; } else { this.setAttribute('clicked', '1'); }"
它不會關閉任何東西,只是防止click事件是第一次點擊後。
+1是一個偉大的和被低估的解決方案。國際海事組織,你不需要真正看到按鈕的禁用樣式。讓用戶儘可能多地點擊他們想要的次數。所有開發人員關心的是避免重複的帖子。 – oscilatingcretin 2014-03-17 18:14:06
我發現,如果你禁用甚至刪除按鈕或輸入元素,它會停止回調服務器,最簡單的方法來處理這是一個hide(),因爲你沒有刪除輸入的功能按鈕/任何
$('input_selector').click(function() {
$(this).hide(200/whatever);
$(this).before('<p>Waiting for server to respond?!?</p><br/>')
});
因爲它是一個隱藏的br是確保p標籤在它上面。 可能有更好的方法,我願意提供建議。
這工作得很好的歡迎,並很容易理解:
var myButton = $('input:submit');
var waitMessage = 'wait please...';
myButton.click(function() {
if (bottone.val() == waitMessage) {
return false;
};
myButton.val(waitMessage);
console.log('iClicked'); // this line is for testing only, it can be removed.
});
這是我的一個按鈕調用的MVC動作,然後自行禁用:
<button class="btn blue pull-right" onclick="location.href='@Url.Action("Index", "GetData", new { page = Model.PageNumber + 1, sortOrder = Model.CurrentSort, fromDate = Model.FromDateParam, toDate = Model.ToDateParam, terminatingpoint = Model.TerminationPointParam, SurecallNo = Model.SurecallNoParm, CallerID = Model.CallerIDParm, outcome = Model.OutcomeParm, pagesize = Model.PageSize })';this.disabled = 'disabled'" >Next ></button>
var but = 1;
function f() {
if(but == 1) {
alert("Hello World!");
but = 0;
}
}
希望它幫助。
這將工作:
OnClientClick="if (this.getAttribute('clicked') == '1') {
return false;
} else {
this.setAttribute('clicked', '1');
}"
你似乎有asp.net mvc的缺乏瞭解。查看http://www.asp.net/(S(pdfrohu0ajmwt445fanvj2r3))/learn/mvc/上的一些視頻。 – 2010-02-19 04:22:43