onclick參數不起作用,爲什麼?Javascript非法字符錯誤
mydiv.innerHTML = mydiv.innerHTML + '<div style="border-bottom: 1px solid #D1D1D1; height: 50px; width: 100%; color: #464646; font-family: RobotoMedium;" onclick="seite5_wechseln('+variable+')">';
希望有一個解決方案。
onclick參數不起作用,爲什麼?Javascript非法字符錯誤
mydiv.innerHTML = mydiv.innerHTML + '<div style="border-bottom: 1px solid #D1D1D1; height: 50px; width: 100%; color: #464646; font-family: RobotoMedium;" onclick="seite5_wechseln('+variable+')">';
希望有一個解決方案。
看來你正在傳遞一個字符串到seite5_wechseln
函數。但是你沒有用引號括起來。
嘗試:
mydiv.innerHTML = mydiv.innerHTML + '<div style="border-bottom: 1px solid #D1D1D1; height: 50px; width: 100%; color: #464646; font-family: RobotoMedium;" onclick="seite5_wechseln(\''+variable+'\')">';
雖然這是正確的,但OP的代碼有很多問題可以解決,而不是修補不起作用的一個位。 –
謝謝!這是解決方案 –
@ T.詹森不客氣。如果這對你有幫助,請認爲它是「anaswer」 –
有這麼多事情錯這個......
試試這個。我稱之爲「做正確的」;)
var newdiv = document.createElement('div');
newdiv.style.cssText = [
"border-bottom: 1px solid #D1D1D1",
"height: 50px",
"width: 100%",
"color: #464646",
"font-family: RobotoMedium"
].join(";");
newdiv.onclick = function() {
seite5_wechseln(variable);
};
mydiv.appendChild(newdiv);
而且可以改進,如定義CSS類的元素,並把款式有(使用newdiv.className = "myclass";
將其設置爲你的元素),以及因爲使用addEventListener
而不是.onclick
賦值,但這相對於原始代碼已經有了巨大的改進。
'variable'的價值是什麼?可能的問題是,你想用它作爲字符串常量,但你留下了引號。 – Pointy
其如下所示:acc2 –
jsfiddle上的演示會更好 – Gintoki