2017-08-14 60 views
1

我有包含標籤名稱的文件──test.txt文件:文本在標籤ID

tagforinserttext

而且我有一個代碼的網頁

<div class="header"> 
    <h1 id="tagforinserttext"></h1> 
</div> 

在JS代碼中,我讀取文件並將「tagforinserttext」變爲變量「tag」。 然後我嘗試插入一些文本,使用

document.getElementById(tag).innerHTML = "sometext"; 

但現在插入的文本......

我發現的getElementById(標籤)不有一個鏈接到網頁標籤,但如果我寫的getElementById('tagforinserttext')然後它的工作!

然後我試圖變量與文本比較,並得到了它們不相等......他們是平等的,因爲那是在變量時通過警報()輸出等於「tagforinserttext」

我不能理解我犯了什麼錯誤,希望對你有所幫助。

+0

我的猜測是文字不是你想象的那樣。 'console.log(escape(tag))' – epascarello

+0

首先,您需要創建一個名爲tag的變量,如var tag =「codes for your js file reading」,然後您需要通過document.getElementById(tagforinserttext)將該內容粘貼到h1。 .innerHTML = tag; .Hope這有幫助。 –

+0

@epascarello thx!日誌顯示「tagforinserttext%0D」。我試圖替換它,但沒有任何改變,我能做些什麼呢?我不知道其他選擇擺脫這封信。 – ZeT

回答

1

從意見,我告訴你做

console.log(escape(tag)) 

這表明你有%0D是換行符,所以你有你正在閱讀的文件中換行。因此,您可以從文件中刪除換行符或使用正則表達式刪除換行符。

tag = tag.replace(/\r?\n|\r/g,"") 

一個更好的解決方案,使用JSON,以便您可以解析和獲取字符串更容易。

+0

謝謝!這就是我需要的! – ZeT