2012-02-29 53 views
2

我將外部html頁面(1.html)的「視圖源」複製到另一個html頁面(2.html)中的javascript變量中。但是由於html頁面中的縮進,引號,空格和標籤,我無法一次性將所有源代碼存儲在字符串中。有沒有可以用來做的功能?將HTML代碼存儲在一個字符串中的javascript

1.HTML的內容:

<html> 
<head> 
    <title>1 </title> 
</head> 
<body> 
    This is just plain text body 
    <div id="new"> This id div text</div> 
    <span> This is span text </span> 
</body> 
</html> 

2.HTML的內容:

<html> 
<head> 
<script type="text/javascript" language="javascript"> 
var str="<html> 
<head> 
    <title>2 </title> 
</head> 
<body> 
    This is just plain text body 
    <div id="new"> This id div text</div> 
    <span> This is span text </span> 
</body> 
</html>"; 

alert (str); 
</script> 
</head> 
<body> 
</body> 
</html> 

如果從1.HTML複製VAR後=」內部2.HTML糊狀所有內容,它沒有考慮這一切。任何解決這個

+2

爲什麼woul你想這樣做嗎? – 2012-02-29 11:03:20

+0

與HTML – 2014-04-20 18:35:58

回答

0

你忘了逃跑報價:

<div id=\"new\"> This id div text</div> 

並替換新行\n

+0

中的變化進行比較,並且字符串不能跨越多行... – 2012-02-29 11:05:22

3

您不能在JavaScript字符串中存儲多行文本。要在JavaScript中存儲該HTML,你必須避免引號和刪除空格。一些例子:

這將無法正常工作

var str = "Multiline 
Text"; 

這不會工作,要麼

var str = "Non-escaped text with "double quotes" and 'single quotes'"; 

這將工作

var str = "This will work because the \"double quotes\" are escaped"; 
+0

是的..我明白..我想知道是否有任何方法添加斜線並刪除\ n可以自動完成?任何功能?如果是,如何使用它? – user1196522 2012-02-29 11:19:09

+0

@ user1196522:你在說什麼背景?你想在JavaScript中以編程方式執行此操作嗎?如果是的話,你如何訪問'1.html'?否則,使用您最喜愛的文本編輯器並進行搜索/替換。 – 2012-02-29 11:24:58

+0

如果您從瀏覽器複製源代碼並將其直接粘貼到JS腳本,它將不起作用。因爲JavaScript引擎將無法正確解析代碼,並且根本無法運行。如果您在粘貼之前詢問如何「修復」源代碼,那超出了您的問題範圍,可以通過多種方式完成。 – package 2012-02-29 11:25:46

相關問題