未捕获的TypeError:无法调用null的方法'appendChild'?

时间:2013-09-30 03:42:36

标签: javascript jquery

I.m在我的项目中使用向下翻页编辑器。

我的HTML代码:

<script src="<?php echo base_url('assets/js/Markdown.Converter.js')?>"></script>
<script src="<?php echo base_url('assets/js/Markdown.Sanitizer.js')?>"></script>
<script src="<?php echo base_url('assets/js/Markdown.Editor.js')?>"></script>


<div style="padding-top:20px;" class="control-group">
                        <div class="controls">
                            <textarea class="wmd-input" id="wmd-input"></textarea>
                        </div>
                </div>
                <div style="padding-top:20px;" class="control-group">
                    <label for="signature" class="control-label user-label">学校专业</label>
                        <div class="controls">
                            <div id="wmd-preview" class="wmd-panel wmd-preview"></div>
                        </div>
                </div>

和我的javascript代码:

<script type="text/javascript">
$(function() 
        {
            var converter1 = Markdown.getSanitizingConverter();
            var editor1 = new Markdown.Editor(converter1);
            editor1.run();
        });
</script>
google chrome browser抛出一个错误“Uncaught TypeError:无法调用方法'appendChild'为null?”,我的代码出了什么问题?

PS:appendChild位于Markdown.Editor.js文件中:1332

1 个答案:

答案 0 :(得分:1)

您缺少wmd-button-bar元素

来自Editot.js doc

  

第二个参数是可选的,通常只有在必要时才需要   你在同一页面中使用了几个编辑器。如果给出,这个   argument是一个字符串,附加到三个HTML元素ID中   编辑使用的元素。默认情况下,编辑器会查找#wmd-button-bar,#wmd-input和#wmd-preview。如果你使用多个编辑器,你当然不能给出第二组元素   与第一个相同的ID,因此您可以创建第二个输入框    并传递字符串“-2”作为第二个   构造函数的参数。

演示:Fiddle