获取contenteditable = true数据

时间:2015-04-23 10:41:55

标签: javascript html

我想从div标签中获取数据,设置contenteditable = true 我已经使用了自动提示...数据已成功获取,但是当我编写以自动提示字段编写的项目时,它不会被提取,因为它添加了HTML标记,它不会保存到数据库中 我的代码 如果数据发生了变化:

var timeoutID;
$('[contenteditable]').bind('DOMCharacterDataModified', function () {
    clearTimeout(timeoutID);
    $that = $(this);
    timeoutID = setTimeout(function () {
        $that.trigger('change')
    }, 50)
});
$('[contentEditable]').bind('change', function () {
    getTextChangeContent();
});

更新

function getTextChangeContent() {
    var ma = document.getElementById('myAudio');
    var remove = ma.src.slice(0, -4);
    var path = remove.substring(remove.lastIndexOf("/") + 1);
    var newPath = path.concat('.wav');
    var text_id = document.getElementById('textbox');
    var textdata = text_id.innerHTML;
    $.ajax(
        {
            type: "POST",
            url: '@Url.Action("getChangeContent")',
            dataType: "json",
            mtype: "post",
            data: { arg: varid, content: textdata, path: newPath },
            async: true,
            success: function (data) {
                alert(data + " DATA");
            }
        });
}

当我更改数据并使用自动提示时,它会将数据显示为

The door is blacl <span class="atwho-inserted">[[Ceilings]]</span>&nbsp;

如何忽略html标记并仅采用其值? Plz建议我

1 个答案:

答案 0 :(得分:1)

检索innerText而不是innerHTML以忽略HTML内容。如果您只想使用类.atwho-inserted的html标记内的内容,则只检索该内容。

var textdata = text_id.innerText;