Textarea设置HTML值

时间:2012-02-27 13:32:23

标签: cordova textarea sencha-touch

我正在创建一个移动应用(PhoneGap),其中有用户可以编辑的新闻。新闻内容采用HTML格式,当用户想要编辑新闻时,它会切换到表单面板,并将文本区域的值设置为新闻的内容值。问题是我在文本区域中获取HTML标记。所以我的问题是,有没有办法从新闻内容中删除/隐藏这些标签?

我尝试过斜线切口技术,但是当我这样做时:

console.log(record.data.content.textContent);

我得到了

*** WebKit discarded an uncaught exception in the webView:decidePolicyForNavigationAction:request:frame:decisionListener: delegate: <NSRangeException> *** -[JKArray objectAtIndex:]: index (1) beyond bounds (1)

由于

3 个答案:

答案 0 :(得分:1)

您可以在元素上使用textContent来获取文本。这适用于Firefox,Chrome和IE9。对于旧版本的IE,您可以使用innerText

var text, 
    editElement = document.getElementsById("elementToEdit");​

if (editElement​.textContent) {
   text = editElement​.textContent;
} else {
   text = editElement.innerText;
}

document.getElementsByTagName("textarea")[0].value = text;​

但是,这会删除内容中的所有标记,只留下文字。

答案 1 :(得分:1)

我终于选择了该方法,即使它也删除了所有HTML标记

Strip HTML from Text JavaScript

答案 2 :(得分:0)

您可以将TinyMCENicEdit等编辑器嵌入到您的应用中。