2013-07-01 210 views
2

我想獲得一個圖像的src要根據天空+ gatMap()+ JPG 的SRC應該是天空#.JPG,其中#是GetMap操作的價值()。 我在報價或什麼的問題,我在這裏做錯了什麼?JavaScript的IMG SRC

<script type="text/javascript"> 
    document.write("<img id='sky' src='sky+mapNum()+.jpg' alt='' />"); 
    </script> 

這是一個問題的情況下出了javaxcript書。它並沒有告訴我如何做到這一點。

+0

我很清楚它必須與引用有關,但我無法弄清楚正確的組合。 – user2089255

+0

'document.write(「」);' –

回答

3
<script type="text/javascript"> 
    document.write("<img id='sky' src='sky"+mapNum()+".jpg' alt='' />"); 
</script> 
+0

謝謝,我必須等10分鐘才能回答問題。 – user2089255

4
document.write('<img id="sky" src="sky' + mapNum() + '.jpg" alt="" />'); 

應該這樣做。根據需要打開/關閉報價。對文字字符串引號和字尾結束引號使用不同的引號,或根據需要使用\進行轉義。

我還要指出的是,document.write()使用一般不提倡。考慮以其他方式操縱DOM。此外,如果您從mapNum()返回任意字符串,則可能會生成無效的HTML,並且如果該值可能來自請求參數,您甚至可能向XSS攻擊自己打開。在可能的情況下,應該直接編輯元素的屬性。

0

您的變量包含在字符串中,並被解釋爲HTML而不是JavaScript。試試這個:

<script type="text/javascript"> 
    document.write("<img id='sky' src='sky" + mapNum() + ".jpg' alt='' />"); 
</script> 
1

<script type="text/javascript"> document.write("<img id='sky' src='sky"+mapNum()+".jpg' alt='' />"); </script>

u需要通過將雙qoutation標記+加號之前打破字符串,然後下一個加號後再次啓動它。

0

在放置「」引號後,它變成一個字符串,這意味着它不會打印任何值,只會在寫入時打印出來。所以你應該記住在哪裏使用「」引號。

<script type="text/javascript"> 
document.write("<img id='sky' src='sky'"+mapNum()+".'jpg' alt='' />"); 
</script> 
0
<script type="text/javascript"> 
    document.write("<img id='sky' src='sky" + mapNum + ".jpg' alt='' />"); 
</script> 

mapNum是一個變量不那麼沒有()後它的功能。這本書非常模糊。