javascript
2013-06-03 61 views 0 likes 
0

我想用window.open方法打开窗口但是我想在字符串函数里面使用这个函数。我写了一些代码,但它不工作。window.open不能在字符串内工作

<head> 
<script type="text/javascript" src="../jquery-1.8.3.js"></script> 
<script type="text/javascript"> 
$(function(){ 
var str= '<a href="javascript:void(0)" onclick="window.open("http://www.google.com","mywin","height=1000, width=500")">google</a>' 
$('body').append(str) 
})</script> 
</head> 
<body> 
</body> 

回答

1

这是因为您将报价放在引号('"Hello, "World!""')之内。您需要使用反斜杠escape them\)。变化:

onclick="window.open("...", "...", "...")" 

要:

onclick="window.open(\"...\", \"...\", \"...\")" 
0

行情不匹配..添加反斜杠(/)

var str= '<a href="javascript:void(0)" onclick="window.open(\"http://www.google.com","mywin","height=1000, width=500\")">google</a>' 
0

你应该在字符串中添加转义字符为“...

var str= '<a href="javascript:void(0)" onclick="window.open(\"http://www.google.com\",\"mywin\","height=1000, width=500\")">google</a>'; 
0

问题是你正在使用"内的另一个",所以你需要使用转义字符为\

这里更新的代码 -

<head> 
<script type="text/javascript" src="../jquery-1.8.3.js"></script> 
<script type="text/javascript"> 
$(function(){ 
var str= '<a href="javascript:void(0)" onclick="window.open(\"http://www.google.com\",\"mywin\",\"height=1000, width=500\")">google</a>' 
$('body').append(str) 
})</script> 
</head> 
<body> 
</body> 
0

你需要使用\'

$(function(){ 
    var str= '<a href="javascript:void(0)" onclick="window.open(\'http://www.google.com\',\'mywin\',\'height=1000, width=500\')">google</a>' 
    $('body').append(str) 
}) 

演示逃生"onclick=".."Fiddle

0

您可以使用另一个函数

var clickFunc=function() {window.open("http://www.google.com","mywin","height=1000, width=500")}; 
var str= '<a href="javascript:void(0)" onclick="clickFunc()">google</a>'; 
0
var str="<a href=\"javascript:void(0)\" onclick=\"window.open('http://www.google.com','mywin','height=1000, width=500')\">google</a>"; 
+0

欢迎来到StackOverflow。您能否请添加一些解释,说明错误的实际位置以及解决方法?谢谢。 – creinig

0

调用双引号里面的函数时,必须使用单引号。你可能会这样做:

onclick="window.open('http://www.google.com')" 
相关问题