[英]ASP.NET Button OnClick not firing without setting UseSubmitBehavior=“false”
[英]asp.net setting onclick of input button dynamically
我有一些看起来像这样的动态按钮:
<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
。
而已。
你为什么不像这样的window.open(<%=SomeUrl%>)
在window.open
内部传递<%=SomeUrl%>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.