这适用于除IE以外的所有其他浏览器。我正在c#中的代码中构建一个链接:
string link = <a onclick=\"Myfunction('" + Server.UrlEncode(mystring) + "');\" href=\"javascript:void(0);\">Open Pop Up Window</a>
这是我的javascript函数:
function Myfunction(pMyString) {
CloseWindow();
var url = "DomainPath/MyPage.aspx?Site=" + pMyString;
win = window.open(url, "Manage Domain", 'toolbar=no,location=no,status=no,directories=no,scrollbars=yes,resizable=no,width='+700+',height='+500);
}
如果该函数被添加到aspx页面中的onclick方法,它可以在IE中运行。似乎只有当我在后面的代码中动态构建链接时。它不接受任何值作为参数,并且IE总是输出错误:SCRIPT87:带有行号的无效参数到我的函数,但是我无法调试。错过了什么?
这是html输出:
<td><a onclick="Myfunction('urlformyexample.com');" href="javascript:void(0);">Open Pop Up Window</a></td>
答案 0 :(得分:47)
IE9调试器在window.open命令上运行并失败。
IE不喜欢windowName
参数中的空格 - “管理域名”。
删除所有空格,连字符和下划线(除非您需要_blank
),然后重试。