我有一些动态按钮,如下所示:
<input type="button" name="button" id="button" value="Click me"
onclick="window.open('somelink');" />
我需要能够从后面的代码中更改“somelink”。
怎么做的?
我知道Request.Form["button"]
获取按钮但是如何设置onlick属性?
答案 0 :(得分:4)
添加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');")
答案 1 :(得分:1)
更改按钮上的单击处理程序应在页面加载时完成,而不是在提交表单时完成。在您从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]');");
答案 2 :(得分:0)
你可以这样做:
<asp:Button id="button" Text="Click me" OnClick="window.open('somelink');" />
和强>
来自背后的代码
button.Attributes.Add("onclick", "window.open('somelink');");
你可以添加任何你想要的东西来代替somelink
就是这样。
答案 3 :(得分:0)
为什么不在<%=SomeUrl%>
内传递window.open
window.open(<%=SomeUrl%>)