Javascript非法字符错误

Javascript非法字符错误,javascript,html,Javascript,Html,onclick参数不起作用,为什么 mydiv.innerHTML = mydiv.innerHTML + '<div style="border-bottom: 1px solid #D1D1D1; height: 50px; width: 100%; color: #464646; font-family: RobotoMedium;" onclick="seite5_wechseln('+variable+')">'; mydiv.innerHTML=mydiv.innerH

onclick参数不起作用,为什么

mydiv.innerHTML = mydiv.innerHTML + '<div style="border-bottom: 1px solid #D1D1D1; height: 50px; width: 100%; color: #464646; font-family: RobotoMedium;" onclick="seite5_wechseln('+variable+')">';
mydiv.innerHTML=mydiv.innerHTML+'';

希望有一个解决方案。

您似乎在向seite5_wechseln函数传递字符串。但你们并没有用引号括起来

尝试:

mydiv.innerHTML=mydiv.innerHTML+'';

这有很多问题

试试这个。我称之为“正确地做”;)


可以进行进一步的改进,例如为元素定义CSS类并将样式放在那里(使用
newdiv.className=“myclass”
将其设置为元素),以及使用
addEventListener
而不是
。onclick
赋值,但这已经是对原始代码的巨大改进。

变量的值是多少?可能问题是您想将其作为字符串常量使用,但没有使用引号。它类似于:JSFIDLE上的acc2a demo会更好。虽然这是正确的,但OP的代码中有许多错误可以而且应该解决,而不是修补一点不起作用的地方。@t.Jansen欢迎您。如果这对您有帮助,请将其标记为
anaswer
mydiv.innerHTML = mydiv.innerHTML + '<div style="border-bottom: 1px solid #D1D1D1; height: 50px; width: 100%; color: #464646; font-family: RobotoMedium;" onclick="seite5_wechseln(\''+variable+'\')">';
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);