InnerHTML不工作:函数未定义

时间:2014-05-05 03:22:07

标签: javascript innerhtml

我尝试使用innerHTML,但每当我运行它并在Google Chrome上按F12时,我都会收到此错误:

未捕获的ReferenceError:未定义fun

这是我的代码:

<script type="text/javascript">
    function fun(){
        document.getElementById('checklist').innerHTML =
        "<li> <input type="checkbox" > <label >Checkbox 1</label> </li>";
    }
</script>
    <p><input type="button" onclick="fun()" value="Add"/></p>

</div>
     <h3></h3>
</div>

 <div class="scroll" >
       <ul class="listacheck" id="checklist">

       </ul>

我不明白为什么它说这个功能没有定义,如果有人能提供帮助,我会很高兴。)

1 个答案:

答案 0 :(得分:6)

该行

"<li> <input type="checkbox" > <label >Checkbox 1</label> </li>";
使用“复选框”周围的嵌入式引号未正确转义

。这导致解析器在fun的定义期间失败。您可以使用单引号

"<li> <input type='checkbox' > <label >Checkbox 1</label> </li>";

或逃避双引号:

"<li> <input type=\"checkbox\" > <label >Checkbox 1</label> </li>";

或使用单引号来定义字符串:

'<li> <input type="checkbox" > <label >Checkbox 1</label> </li>';