繁体   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