簡體   English   中英

調用服務器端按鈕從客戶端單擊 function

[英]Call a server side button click function from client side

我有一個這樣的按鈕:

<asp:LinkButton runat="server" ID="btnDeleteActivity" OnClientClick="return ConfirmDelete()" OnClick="btnDeleteActivity_Click">
     Delete activity
</asp:LinkButton>

還有這個 HTML:

<i class="fa fa-trash" onclick="DeleteActivity()"></i>

在 JS 我有這個:

function DeleteActivity() {
   document.getElementById('<%= btnDeleteActivity.ClientID %>').click();
}

問題是當我點擊 i 元素時,它只調用按鈕的 OnClientClick而忽略 OnClick (OnClientClick里面的JS function只是一個簡單的return confirm('some message'))

我試圖刪除 OnClientClick 並僅使用按鈕上的 OnClick 進行測試,但它仍然沒有調用它。 當我測試直接點擊按鈕時,它工作得很好。

有人知道可能是什么問題?

您可以更改 JavaScript function ConfirmDelete()以在i標簽單擊時返回true (通過設置全局變量)。

或者添加另一個不顯示或不包含 JavaScript OnClick 的按鈕來處理回發。

例如:

<asp:LinkButton
    style="display:none;"
    runat="server"
    ID="btnHiddenDeleteActivity" 
    OnClick="btnDeleteActivity_Click">
</asp:LinkButton>

或者,您可以只調用 PostBack

function DeleteActivity() {
   __doPostBack('<%= btnDeleteActivity.UniqueID %>','')
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM