我有一些看起来像这样的动态按钮:
<input type="button" name="button" id="button" value="Click me"
onclick="window.open('somelink');" />
我需要能够从后面的代码中更改“somelink”。
这是怎么做的?我知道Request.Form["button"]
获取按钮但如何设置 onlick 属性?
添加 runat="server" ,您可以从后面的代码访问该链接
<input runat="server" type="button" name="button" id="button" value="Click me"
onclick="window.open('somelink');" />
如果您想更改 onclick 属性,那么您可以在后面的代码中执行此操作
button.Attributes.Add("onclick", "window.open('someOtherLink');")
更改按钮的单击处理程序应在页面加载时完成,而不是在提交表单时完成。在您可以从 C# 访问您的按钮之前,您需要添加runat="server"
. 之后,您可以访问其属性:
HTML
<input runat="server" type="button" name="button" id="button" value="Click me"
onclick="window.open('somelink');" />
C#
button.Attributes.Add("onclick", "window.open('[DynamicValueHere]');");
你可以这样做:
<asp:Button id="button" Text="Click me" OnClick="window.open('somelink');" />
并
从后面的代码
button.Attributes.Add("onclick", "window.open('somelink');");
你可以添加任何你想要的东西来代替somelink
.
就是这样。
你为什么不这样<%=SomeUrl%>
进去window.open
window.open(<%=SomeUrl%>)