cleditor.selectedHTML():object不支持属性或方法

时间:2013-05-31 15:37:47

标签: cleditor

我正在使用页面上的cleditor创建一个RTE框,其下方有一个Save and Cancel按钮。

在“保存”按钮的“onclick”功能中。我调用了两个cleditor对象的方法,即:.select()和.selectedHTML()

.select()工作正常但.selectedHTML()在我的浏览器中产生“对象不支持属性或方法”错误(即)。

为什么我收到此错误? .selectedHTML()方法确实存在。

请参阅以下代码:

var $editor
uab.crs_sum.prototype.render = function() {

    var oJSON = {};
    var target = this.getTarget();
    var tmpHTML = [];
    var chkOption = "";

tmpHTML = ["<textarea id='input' name='input'>This is some really great Content</textarea>"];
tmpHTML.push("<div><button style='width:6em'type='button' onclick='cancelEdit();'>Cancel</button><span style='width:3em'>&nbsp&nbsp&nbsp</span><button style='width:6em' type='button' onclick='saveEdit();'>Save</button></div>"); 
target.innerHTML = tmpHTML.join("");

$editor = $("#input").cleditor({
      "width":"100%"
      });
}


function saveEdit() {
    $editor.select();
    alert($editor.selectedHTML());  // Error occurs on this line 
}

2 个答案:

答案 0 :(得分:0)

我不熟悉.selectedHTML()方法,但对我有用的是使用标准的jQuery .val()方法。只需存储一份工作副本即可恢复原状。

var $element = $('#input'),
    currentVal = $element.val();

$editor = $element.cleditor({
      "width":"100%"
 })[0];


function saveEdit() {
    alert($element.val());
}

function cancelEdit() {
  $element.val(currentVal);
  $editor.updateFrame();
}

答案 1 :(得分:0)

仅供参考我在尝试使用selectedHTML()时遇到了同样的问题,以下更改解决了我的问题。

$('#input').cleditor()[0].selectedHTML()

看起来cleditor()函数返回一个数组。我只是在页面上用一个编辑器尝试过这个。