簡體   English   中英

ASP.NET-使用Javascript在LinkBut​​ton上編輯CommandName

[英]ASP.NET - Edit CommandName on LinkButton using Javascript

我在中繼器中有一系列鏈接按鈕,用於切換頁面

<asp:Repeater ID="rptPageLinks" runat="server"><ItemTemplate>
    <asp:LinkButton ID="lnkNewPage" runat="server" Text='<%# Eval("Page") %>'
    OnCommand="SomeEventHandler" CommandArgument='<%# Eval("Page") %>' CommandName="Redirect"
    OnClientClick="return confirm('Do you want to save your chanes before you navigate to a new page?');" />
</ItemTemplate></asp:Repeater>

我想要做的是將結果從OnClientClick傳遞到EventHandler,最好是通過更改CommandName(即,如果他們在確認中單擊“是”,則將CommandName更改為“ SaveAndRedirect”,如果他們單擊“否”)。它保持為“重定向”)。

有人可以幫忙嗎? 謝謝,如果可以的話。

不幸的是,您無法通過這種方式提出要求。 OnCommand是ASP控件的ASP.Net服務器端屬性。 在呈現后的客戶端上,只有客戶端html可以使用。

但是,解決方案是將確認對話框的值保存到命令事件中的隱藏字段中,然后在命令中讀取該字段。 為此,我建議如下:

<script type="text/javascript">
    function confirmSave() {
        document.getElementById('confirmChoice').value=confirm("Do you want to save your changes...");
    }
</script>
<input type='hidden' id='confirmChoice' runat="server" />

然后,在您在命令事件上調用的代碼后面的頁面內,您可以訪問在隱藏字段中設置的值。

暫無
暫無

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

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