C# 超链接导航
我正在使用C# 超链接导航,c#,asp.net,javascript,C#,Asp.net,Javascript,我正在使用asp:hyperlink按钮打开条款和条件弹出窗口。 超链接的代码是- 条款和条件 当我在浏览器中单击此URL时,它会打开我的test.aspx页面。但是随着test.aspx它打开了另一个页面: 页面的URL是:“javascript:window.open('test.aspx');” 页面正文为:[object] 你能建议我如何摆脱这个不需要的页面吗 谢谢来吧: NavigateUrl="javascript:window.open('test.aspx'); retur
asp:hyperlink
按钮打开条款和条件弹出窗口。
超链接的代码是-
条款和条件
当我在浏览器中单击此URL时,它会打开我的test.aspx
页面。但是随着test.aspx
它打开了另一个页面:
- 页面的URL是:
“javascript:window.open('test.aspx');”
- 页面正文为:
[object]
NavigateUrl="javascript:window.open('test.aspx'); return false;"
但是,更好的做法是将其放入OnClientClick
NavigateUrl="#" OnClientClick="window.open('text.aspx'); return false"
--编辑:
条款和条件
根据评论更新。使用:-
Target
不再需要它,不再使用。保留为超链接控件,因为可能有其他原因OP需要它作为页面上的控件。条款和条件
<asp:HyperLink ID="HyperLink4" Target="_blank"
NavigateUrl="javascript:void window.open('test.aspx');"
ForeColor="#F58022" runat="server">Terms and Conditions</asp:HyperLink>
是否有任何理由需要使用超链接
控件
您可能只需要使用标准HTML链接(或控件),然后使用客户端onclick
事件触发JavaScript:
<a id="HyperLink4" runat="server" href="test.aspx" target="_blank"
onclick="window.open('test.aspx');return false;"
style="color:#F58022">Terms and Conditions</a>
删除
Target=\u Blank
,您不需要它,JavaScript已经打开了一个新窗口
提示:若要了解其行为不同的原因,请在浏览器中查看源代码,并检查web控件以HTML术语生成的内容。您应该在超链接周围包装代码标记,以便我们可以看到超链接。我不认为
超链接
控件具有OnClientClick
事件/属性,但是关于使用客户端onclick
事件而不是href
事件的观点是很好的不工作….?穆罕默德和卢克:我忘了超链接没有“onclientclick”。最好还是提供href
和target
属性,以防JavaScript未启用。@Luke:为什么要提供一个从未使用过的目标?提供href不仅仅是一种很好的做法,在某些浏览器中,如果没有href,锚就不能起到锚的作用。@Anthony:如果禁用JavaScript,将使用href
和target
。拥有href=“test.aspx”
和target=“\u blank”
应该给出最接近JS行为的非JS近似值。例如,在新窗口中打开test.aspx
。@Luke:我想这取决于你的观众。在许多intranet(以及公共)站点中,非JS只是一个非初学者,您可能在早些时候就采用了这种方式。当然,如果您所做的只是window.open,那么您就不必为onclick而烦恼了all@Anthony:的确如此,但我的客户通常要求(a)用户不应该因为没有“正确”的浏览器、没有启用JavaScript等而被任意排除在他们的网站之外;(b)当用户的浏览器功能不全时,网站应尽可能优雅地降级。客户端接受当JS不可用时某些事情是不可能的,但是如果一个简单的链接在JS关闭的情况下没有做任何事情,客户端会非常不高兴。
<asp:HyperLink ID="HyperLink4" href="#"
onclick="window.open('test.aspx'); return false;"
ForeColor="#F58022" runat="server">Terms and Conditions</asp:HyperLink>
<asp:HyperLink ID="HyperLink4" Target="_blank"
NavigateUrl="javascript:void window.open('test.aspx');"
ForeColor="#F58022" runat="server">Terms and Conditions</asp:HyperLink>
<a id="HyperLink4" runat="server" href="test.aspx" target="_blank"
onclick="window.open('test.aspx');return false;"
style="color:#F58022">Terms and Conditions</a>