我正在使用asp:超链接按钮打开条款和条件弹出窗口.超链接的代码是 -
<asp:HyperLink ID="HyperLink4" Target="_blank"
NavigateUrl="javascript:window.open('test.aspx');"
ForeColor="#F58022" runat="server">Terms and Conditions</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)
当我在浏览器中单击此Url然后它打开我的test.aspx页面但是与test.aspx一起; 它打开了另一个页面,页面的网址是 - "javascript:window.open('test.aspx');" 在这个不需要的页面的主体 - [对象].
你能否建议我如何摆脱这个不需要的页面.
谢谢
使用:-
<asp:HyperLink ID="HyperLink4" Target="_blank"
NavigateUrl="javascript:window.open('test.aspx'); return false;"
ForeColor="#F58022" runat="server">Terms and Conditions</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)
问题是window.open返回一个窗口对象.javascript:"协议"的一个目的是允许javascript代码生成HTML内容,返回该协议后面的表达式.然后导航发生在包含该HTML的新页面.
在你的情况下,因为你有Target ="_ blank"一个新的页面打开,你的表达式返回的对象(由window.open打开的新窗口)调用了toString()方法,这是在这个额外窗口中显示的内容.
编辑:
我打破了代码,因为它不起作用.silky提供了正确的解决方案.但是我没有删除答案,因为对问题代码中发生的事情的解释是有效的.因此解决方案确实是: -
<asp:HyperLink ID="HyperLink4" href="#"
onclick="window.open('test.aspx'); return false;"
ForeColor="#F58022" runat="server">Terms and Conditions</asp:HyperLink>
Run Code Online (Sandbox Code Playgroud)
Target不再需要它不被使用.保留为HyperLink控件,因为OP可能有其他原因需要它作为页面上的控件.
| 归档时间: |
|
| 查看次数: |
16008 次 |
| 最近记录: |