html文本编辑器不以ajax形式显示

时间:2011-09-26 07:55:18

标签: php jquery ajax text-editor

我正在使用一个文本编辑器,它将以添加形式显示。我通过ajax加载表单。当我单击添加按钮时,添加表单将加载到ajax.Now问题是我的HTML文本编辑器脚本文件没有加载我的ajax表单。单独显示简单的文本区域。       如何以ajax形式加载文本编辑器,请指教。

这是我正在使用的编辑器

  <script type='text/javascript'>   
    var j = jQuery.noConflict();
        j(function() {
            j("#Textarea1").htmlarea({
                toolbar: ["html", "|",
                        "forecolor",  
                        "|", "bold", "italic", "underline", "|", "p", "h1", "h2", "h3", "|", "link", "unlink"] // Overrides/Specifies the Toolbar buttons to show
                });
        });
    </script>

    <textarea id="Textarea1" cols="50" rows="15"><p><h3>Another TextArea</h3>This is some sample text to test out the <b>WYSIWYG Control</b>.</p></textarea>

3 个答案:

答案 0 :(得分:1)

请尝试在Ajax加载期间加载所有js文件。 另请注意您使用的html编辑器类型,如FCKEditor,Tiny MCE等。

答案 1 :(得分:0)

用于创建编辑器的js可能只是在运行时加载。将它移动到一个函数,调用就绪并在ajax成功。

答案 2 :(得分:0)

不会执行该功能。如果您希望运行该脚本,则需要在响应“eval”脚本后调用函数。

您的新功能需要在DOM中查找并执行脚本。

下面的伪代码

//put your response in a div or something and use the div id to grab the tag with a name = to script
divId.getElementsByTagName("script")
loop...
eval(script.innerHTML)

通过AJAX加载到文档中的脚本总会发生这种情况。要解决这个问题,你可以做两件事。

  1. 使用DOM获取AJAX响应,然后将其附加到文档的头部,以便将其视为脚本。

  2. 使用eval()。我不鼓励这样做,但有些人不关心使用它,特别是当代码很小时。