单击图像时出错:Unexpected Token}

时间:2015-09-25 19:48:54

标签: javascript html

我有一个图像,它应该在点击它时运行一个函数,但由于一个奇怪的原因我收到错误“Unexpected Token}”。这是我的代码: HTML:

  <img src='images/buildings/house_3.png' onClick='selectbuilding('house');'>

使用Javascript:

function selectbuilding(whichbuilding)
{
    building = whichbuilding;
    buildingselected = 1;
    if (building == "house") {
        document.getElementById('maparea').innerHTML="<form method='post'><h2>Base</h2><input id='button' type='button' name='button' onclick='myFunction();' value='Close'/><input id='button' type='button' name='button' onclick='checkelement();' value='Upgrade Base'/></form>";
    }
    if (building == "wood") {
        document.getElementById('maparea').innerHTML="<form method='post'><h2>Wood</h2><input id='button' type='button' name='button' onclick='myFunction();' value='Close'/><input id='button' type='button' name='button' onclick='checkelement();' value='Upgrade Wood'/></form>";
    }
    else {
document.getElementById('selectbuilding').innerHTML="<img src='images/buildings/" + building + "_3.png'>";
    }
}

请帮忙!

1 个答案:

答案 0 :(得分:1)

查看HTML,尤其是属性值。解析器应该如何知道属性值在第四个'结束,而不是第二个?它不能。

您编写的代码等同于

<img onClick='selectbuilding(' />

在内部创建类似

的内容
function handler(event) {
    selectbuilding(
}

这显然不是有效的JavaScript。对函数参数或属性值使用双引号。