2010-09-21 155 views
0

我在我的HTML /基於PHP的頁面中間的某個位置定義像這樣的javascript函數-破碎的JavaScript

<script language="javascript" type="text/javascript"> 
function popitup2() 
{ 
    newwindow2=window.open('','name','height=265,width=350'); 
    var tmp = newwindow2.document; 
tmp.write('<html><head><title>Coupon</title>'); 
tmp.write('<link rel="stylesheet" href="<?php echo get_bloginfo('wpurl'); ?>/wp-content/themes/street/coupon.css">'); 
tmp.write('<script src="/street/coupon.js"> </script>'); 
tmp.write('<script src="http://code.jquery.com/jquery-1.4.2.min.js"</script>'); 

... /*這是工作細一些其他的代碼*/

現在,當我打開它時,此網頁顯示中斷。但是,如果我從javascript中刪除了以下兩行,則錯誤消失,頁面顯示正常。

tmp.write('<script src="/street/coupon.js"></script>'); 
tmp.write('<script src="http://code.jquery.com/jquery-1.4.2.min.js"></script>'); 

有人可以告訴這些行的編碼有什麼問題。

+0

ayush你可以檢查,如果你只是刪除第一行包含coupoun.js會發生什麼...... – 2010-09-21 16:26:27

+0

@sushil:仍然broken.Only當兩條線被刪除錯誤去。 – Ayush 2010-09-21 16:28:24

回答

5

瀏覽器正在將字符串中的</script>解釋爲<script>標記的結尾。

將其更改爲

tmp.write('<' + 'script src="/street/coupon.js"></' + 'script>'); 
1

在你的最後一行,你有

tmp.write('<script src="http://code.jquery.com/jquery-1.4.2.min.js"</script>'); 

其缺少關閉直角支架。它應該閱讀:

tmp.write('<script src="http://code.jquery.com/jquery-1.4.2.min.js"></script>'); 

現在,當你給行再次展現你刪除的內容,它正確地呈現,所以我不知道這是否是真正的問題,或者你只是做了一個錯字第一次。值得一試。