簡體   English   中英

使用document.write時如何忽略HTML標簽

[英]How to Ignore HTML Tags when Using document.write

我有這行應該顯示該行的Javascript代碼

document.write(\" <textarea name=\"Text1\" cols=\"+col+\"rows=\"+row+\" id=\"textbox\" style=\"HelveticaNeue-Light\">\");

這是通過使用document.write完成的。 所以基本上

document.write("document.write(\" <textarea name=\"Text1\" cols=\"+col+\"rows=\"+row+\" id=\"textbox\" style=\"HelveticaNeue-Light\">\");");

首先,我將上面的字符串傳遞給數組,然后在程序中使用document.write顯示它。

問題在於,當顯示它時,它實際上會創建一個文本框並顯示它。 我相信這是因為HTML會不斷檢查標簽,而不管它們在引號中的位置如何,等等。

我該如何解決? 我只想顯示實際的行,而不是行的輸出。 反正有這樣做嗎? 我可以使用不同於document.write東西嗎? 我可以將其輸出到僅顯示它的文本框中嗎? 夠了嗎?

您需要轉義標簽。 這些符號: < >必須編碼為&lt; &gt;

您的示例應與此類似:

document.write(" `&lt;textarea name=\"Text1\" cols=\"+col+\"rows=\"+row+\" id=\"textbox\" style=\"HelveticaNeue-Light\"&gt;");

<替換為&lt; >通過&gt;

嘗試這個 :

 document.write("document.write(\\" &lt;textarea name='Text1' cols=\\"+col+\\" rows=\\"+row+\\" id='textbox' style='HelveticaNeue-Light'&gt;\\");"); 

您可以通過設置它的innerText將字符串直接添加到元素:

var myDiv = document.getElementById('myDiv');
myDiv.innerText = '<p>These p tags will be displayed as text</p>';

您對它進行HTML編碼,就像這樣

document.write("document.write(\" <textarea name=\"Text1\" cols=\"+col+\"rows=\"+row+\" id=\"textbox\" style=\"HelveticaNeue-Light\">\");".replace('<', '&lt;').replace('>', '&gt;'));

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM