我問一個問題,而回有關如何獲取當前變量在一個循環中,我得到了解決:傳遞一個變量給另一個函數在Javascript
for (i in ...)
{
...
href:"javascript:on_click('+i+');"...}
當我運行這一點,循環發送on_click函數的字符串'我',而不是我的價值。
我使用+variable+
錯了嗎?有人可以更詳細地解釋什麼包裝變量的意思,爲什麼它不適用於我的情況?
我問一個問題,而回有關如何獲取當前變量在一個循環中,我得到了解決:傳遞一個變量給另一個函數在Javascript
for (i in ...)
{
...
href:"javascript:on_click('+i+');"...}
當我運行這一點,循環發送on_click函數的字符串'我',而不是我的價值。
我使用+variable+
錯了嗎?有人可以更詳細地解釋什麼包裝變量的意思,爲什麼它不適用於我的情況?
試試這個:
href:"javascript:on_click('" + i + "');"
是的,你是 - 如果你開始一個字符串"
,你必須以"
(反之亦然'
)結束它。 SO中的語法突出顯示了這一點。
href:"javascript:on_click("+i+");"...}
(正在發生的事情是,'
內"
包圍的字符串被視爲普通'
字符,它沒有啓動,也沒有在這裏結束字符串文本)。
當我做'+ i +'時叫什麼?我想查看更多信息,除了我不知道要搜索什麼 – LostLin 2011-03-23 19:27:13
會發生什麼,'i'被轉換爲字符串並連接到周圍的字符串。 – 2011-03-23 19:28:22
看來,你缺少雙引號關閉您的字符串。 Javascript不會在帶引號的字符串中進行可變插值。
嘗試:
href:"javascript:on_click('" + i + "');"...}
你混合你的引號。
它應該是:
href: "javascript:on_click('" + i + "');"
注意雙引號是如何在必要的不變部分的兩端。
YESSS非常感謝你!我一直在試圖弄清楚這麼長的時間。你能解釋爲什麼這個工作? – LostLin 2011-03-23 19:23:49
看看這個教程:http://www.quirksmode.org/js/strings.html那裏很漂亮的代碼示例,這應該給你正確的想法。 – 2011-03-23 19:52:13