2012-03-06 28 views
14

這是在除IE以外的所有其他瀏覽器中工作。我建立了代碼中的鏈接後面在C#:SCRIPT87:IE 9中的無效參數,ASP.NET 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); 
    } 

如果該功能被添加到一個onclick方法aspx頁面,它工作在IE 。這似乎只是當我在後面的代碼中動態地構建鏈接時。它不會接受任何值作爲參數,並且IE始終輸出錯誤:SCRIPT87:帶有行號的無效參數給我的函數,但是我無法調試。錯過了什麼?

下面是HTML輸出:

<td><a onclick="Myfunction('urlformyexample.com');" href="javascript:void(0);">Open Pop Up Window</a></td> 
+0

請同時發佈生成的html。 – gilly3 2012-03-06 19:18:35

+0

感謝您的回覆,我用html更新了我的帖子。我通過的變量將是域名,這就是爲什麼我將它作爲參數。 – Drew 2012-03-06 19:33:59

+1

「但是我無法調試,錯過了什麼?」。是的,你錯過了內置的IE調試器。 – kirilloid 2012-03-06 19:35:07

回答

47

IE9調試工作,並未能在您window.open命令。

IE不喜歡windowName參數 - 「管理域」中的空格。

刪除任何空格,連字符和下劃線(除非你想要_blank)並再試一次。

+4

ie9不喜歡下劃線或窗口名稱中的點。傷心! – 2012-03-10 11:37:09

+6

+1。在窗口名稱中打出連字符也會在IE9中打破window.open()。 – nickb 2012-06-21 22:38:52

+1

不知道你怎麼知道這個,但謝謝! – owca 2012-11-05 14:19:20