<script type="text/javascript">
function ClientSideClick(myButton) {
//make sure the button is not of type "submit" but "button"
if (myButton.getAttribute('type') == 'button') {
// disable the button
myButton.disabled = true;
//myButton.className = "btn-inactive";
myButton.value = "Posting...";
}
return true;
}
</script>
<asp:UpdatePanel ID="upComments" runat="server" UpdateMode="Always" >
<ContentTemplate>
<asp:ListView ... >
<asp:Button ID="btnSubPostComment" runat="server" Text="Reply Comment"
CommandName="cmdPostSubComment" OnClientClick="ClientSideClick(this)" UseSubmitBehavior="false"
</asp:ListView>
</ContentTemplate>
</asp:UpdatePanel>
Javascript函數(ClientSideClick)在處理時禁用按鈕。ASP.NET:更新面板中ListView內的按鈕導致完全回傳
的問題是,當我包括 的OnClientClick =「ClientSideClick」 UseSubmitBehavior =「假」 在我的按鈕,即使它是一個更新面板內它會導致完全回發。
如果我刪除這兩個屬性OnClientClic和UseSubmitBehavior該按鈕不會導致完整回發。有誰知道爲什麼發生這種情況?
我想要做的就是禁用按鈕,並改變它的文本以防止多次提交。
您是否嘗試過沒有「返回true」? – 2GDev
@ 2GDev「返回true」用於重新啓用按鈕,但即使沒有該行,它仍會使按鈕導致完整的回發。 –
@EricBergman - 你爲什麼認爲它會導致完整的回發?我測試了你的代碼,並且它做了部分回發......你是否在沒有任何其他邏輯可能干擾的新頁面上嘗試它? – Blachshma