2015-02-11 25 views
0

我創造了一些變量如下一個新的窗口警報:爲什麼不顯示在新窗口中

var setScript = "<script>alert('test');<//script>"; 
var w = window.open(); 
var createBody = $(w.document.body); 
var createHead = $(w.document.head); 
createBody.html(""); 
createBody.html(p); 
createHead.html(setStyle); 
createHead.append(setScript); 

我沒有看到在新窗口中的警報。

我該如何解決這個問題。

F12

enter image description here

+5

應該''是''<\/script>? – j08691 2015-02-11 17:25:08

回答

1

你檢查你的錯誤控制檯上使用document.write

螢火蟲給我這個:

SyntaxError: expected expression, got '<' 


alert('test');<//script> 

而像@ j08691的意見,你應該改變你的第一行代碼如下:

var setScript = "<script>alert('test');<\/script>"; 
+0

如何添加' DOCTYPE'?我認爲需要添加腳本才能正常工作。 – SearchForKnowledge 2015-02-11 17:37:28

+0

我嘗試沒有'DOCTYPE',它的工作正常 – 2015-02-11 17:38:22

+0

對於這個問題:http://stackoverflow.com/questions/28459831/how-to-send-a-script-to-a-javascript-created-window – SearchForKnowledge 2015-02-11 17:39:17

1

這裏是你應該做的:

<script> 
    (function(){ 
    var body=document.getElementsByTagName('body')[0], 
     head=document.getElementsByTagName('head')[0], 
     script=document.createElement('script'); 

    //Do stuff with body 

    script.onload = function() { 
     alert("foo"); 
    }; 

    head.appendChild(script); 
    })(); 
</script> 
+1

不能使用''VS給出錯誤。 – SearchForKnowledge 2015-02-11 17:28:43

1

這樣的事情? http://jsfiddle.net/swm53ran/222/

新窗口

<button onclick="myFunction()">Try it</button> 
<script> 
function myFunction() { 
    var myWindow = window.open(); 
    myWindow.document.write("<script>alert('test');<\/script>"); 
} 
</script> 
+0

我其實想用它來達到不同的目的:http://stackoverflow.com/questions/28459831/how-to-send-a-script-to-a-javascript-created-window – SearchForKnowledge 2015-02-11 17:30:21