使用jquery更改事件的ck编辑器

时间:2011-11-29 10:06:46

标签: php jquery ajax ckeditor

我设置了一个带有两个选择输入的ck编辑器,当我选择每个输入时,他们必须在数据库中获取内容并将其添加到ck编辑器,firebug显示确定内容返回到页面但不是在ck编辑器中显示

<script>
$(function(){
    CKEDITOR.replace( 'quote', {
        toolbar : [
            [ 'Bold', 'Italic', 'Link', 'Unlink' ]
        ]
    });

    $("#lang, #item").change(function(){
        $.ajax({
            url: 'admin_ajax.php?action=header',
            data:"lang="+$("#lang").val()+"&item="+$("#item").val(),
            success: function(data) {
                // $('#quote').css({display:"block",visibility: "visible"}).html(data);
                $('#quote').html(data);
            }
        });
    });
});
</script>

<?php
    if(isset($_POST["submit_header"]) ) {
        mysql_query("update header_page set content='".$_POST["quote"]."' where lang_id='".$_POST["lang"]."' and item='".$_POST["item"]."' ") or die (mysql_error());
    }
?>
<form method="post">
    <select name="lang" id="lang" class="select">
        <?php $g=mysql_query("select * from lang");
            while($gr=mysql_fetch_array($g)){
        ?>
        <option value="<?php echo $gr["id"]; ?>"  <?php if($_POST["lang"]==$gr["id"]) echo 'selected'; ?>><?php echo $gr["name"]; ?></option>
        <?php  }  ?>
    </select>

    <select name="item" id="item" class="select">
        <?php $g=mysql_query("select distinct item from header_page");
        while($gr=mysql_fetch_array($g)){
        ?>
            <option value="<?php echo $gr["item"]; ?>"  <?php if($_POST["item"]==$gr["item"]) echo 'selected'; ?>><?php echo $gr["item"]; ?></option>
        <?php  }  ?>
    </select>

    <textarea class="ckeditor" name="quote" id="quote"></textarea>
    <input type="submit" value="Submit" name="submit_header" />
</form>

2 个答案:

答案 0 :(得分:3)

你可以尝试:

CKEDITOR.instances.editor1.setData('value in here');

// change `editor1` to your editor Name.

您还可以使用getData在AJAX调用中从CKeditor中检索值。

var text = CKEDITOR.instances.editor1.getData(); // var text now has the data

答案 1 :(得分:1)

尝试使用jQuery CKEditor plugin。这使您可以选择将.val()与jQuery一起设置为textarea。

所以你会喜欢

$('#quote').val(data);