该脚本仅运行一次。我单击一个按钮,它会更改菜单。我单击另一个按钮,它没有执行任何操作。我测试了两个按钮的优先级,然后是第二个。

function deelnemersmenu(optie) {
    if (optie == "deelnemers") {
        var menuHtml = "<div class='profielmenu_item_current' id='deelnemers_item_deelnemers' onclick='deelnemersmenu('deelnemers')'>Deelnemers</div><div class='profielmenu_item' id='deelnemers_item_bedrijven' onclick='deelnemersmenu('bedrijven')'>Bedrijven</div>";
    } else if (optie == "bedrijven") {
        var menuHtml = "<div class='profielmenu_item' id='deelnemers_item_deelnemers' onclick='deelnemersmenu('deelnemers')'>Deelnemers</div><div class='profielmenu_item_current' id='deelnemers_item_bedrijven' onclick='deelnemersmenu('bedrijven')'>Bedrijven</div>";
    }

    //when I leave the document etcera line out the script runs every time (getting the yeah message)
    document.getElementById('deelnemersmenu').innerHTML = menuHtml;
    alert("yeah");
}

最佳答案

更改:

 ".. onclick='deelnemersmenu('deelnemers')' .. "




 ".. onclick='deelnemersmenu(\"deelnemers\")' .. "


它会工作。确保在任何位置都进行了更改!



我的测试代码:

<script>
var menuHtml = "<div class='profielmenu_item_current' id='deelnemers_item_deelnemers' onclick='deelnemersmenu(\"deelnemers\")'>Deelnemers</div><div class='profielmenu_item' id='deelnemers_item_bedrijven' onclick='deelnemersmenu(\"bedrijven\")'>Bedrijven</div>";

document.write(menuHtml);

function deelnemersmenu(x){
 alert(x);
}
</script>

关于javascript - javascript只运行一次,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3439166/

10-11 13:31