<label for="abc" id="xyz">http://abc.com/player.js</xref>?xyz="foo" </label>
被忽略了瀏覽器標籤文本忽略HTML標籤
</xref> tag
值。因此,所顯示的輸出是
http://abc.com/player.js?xyz="foo"
,但我想在瀏覽器中顯示
http://abc.com/player.js</xref>?xyz="foo"
請幫助我如何實現這一目標。
<label for="abc" id="xyz">http://abc.com/player.js</xref>?xyz="foo" </label>
被忽略了瀏覽器標籤文本忽略HTML標籤
</xref> tag
值。因此,所顯示的輸出是
http://abc.com/player.js?xyz="foo"
,但我想在瀏覽器中顯示
http://abc.com/player.js</xref>?xyz="foo"
請幫助我如何實現這一目標。
我誤解了這個問題,我認爲URI將被用在JavaScript的其他地方。但是這個問題非常清楚地表明,URI只是被渲染爲文本。
如果正在顯示的文本是從服務器傳入的,那麼最好的辦法就是在將它打印在頁面上之前進行編碼(或者如果您使用的是模板引擎,那麼您很可能只是對其進行編碼在模板上)。幾乎任何Web框架/模板引擎都應具有此功能。
但是,如果它只是靜態HTML,只需手動編碼字符。如果你不知道把你的頭頂部的代碼,你可以使用一些在線轉換器的幫助,比如像:
HTML編碼/解碼:
http://htmlentities.net/
老答案:
嘗試使用JavaScript函數encodeURI
使用它之前編碼URI:
</xref>
標籤作爲是瀏覽器
decodeURI(yourEncodedURI);
所以,最後,但你:
encodeURI('http://abc.com/player.js</xref>?xyz="foo"');
可以使用decodeURI
也對其進行解碼如果需要的話將能夠保留它(使用encodeURI
/decodeURI
),並在代碼中使用它,如果這是你所需要的。
小提琴:
http://jsfiddle.net/rk8nR/3/
更多信息:
When are you supposed to use escape instead of encodeURI/encodeURIComponent?
你應該做這樣的
"http://abc.com/player.js%3C/xref%3E?xyz=foo"
網址應正確編碼的工作是有效的URL
使用encodeURI
爲一個有效的
var ValidURL = encodeURI("http://abc.com/player.js</xref>?xyz=foo");
網址進行編碼見this答案在encodeURI
獲得更好的知識。
它不被忽視。它被視爲結束標記(對於沒有開始標記的非HTML元素)。如果您想讓<
字符顯示爲數據而不是「開始標記」,請使用<
。
也就是說,這是一個URL和原材料<
,>
和"
人物不應該出現在URI的反正。因此,將其編碼爲http://abc.com/player.js%3C/xref%3E?xyz=%22foo%22
謝謝,沒有任何JS庫功能,這是否? – javalearner 2013-04-10 09:38:31
'encodeURI'和'encodeURIComponent'是核心JavaScript的一部分 – Quentin 2013-04-10 09:38:51
我喜歡這個http://jsfiddle.net/rk8nR/3/ – javalearner 2013-04-10 10:08:18
爲什麼你會用正確的方式在標記中使用客戶端腳本? – 2013-04-10 10:29:34
lol @ user835785 HTML部分沒有絲毫貢獻。 – Jace 2013-04-11 00:40:48