2013-06-21 40 views
2

我想写一个使用jQuery的功能文本()替换字符串我怎么用jQuery剥离HTML功能

想这里面的html函数内部:

function formatData(inputstring) { 

    // strip HTML 
    var output = $(inputstring).text(); 

    // ... do some more stuff with output 

    return output ; 
} 

,然后用它就像

alert (formatData("some <b>html</b> stuff")) 

为什么这不起作用?

+0

什么是输入这里 – PSR

+0

你怎么称呼呢?输入应该是一个有效的jQuery选择器。 – BigMike

+0

输入应该是一个字符串 – rubo77

回答

4

请确保该字符串是一个有效的jQuery对象,然后从它得到text(),我正在制作一个函数,因为它是你所要求的,但是如果你不多次调用它,它可以内联。

function removeHtml(input){ 
    return $("<span>"+input+"</span>").text(); 
} 

alert(removeHtml("I was a string with <h1>HTML!</h1>")); 

Demo

+0

谢谢,那工作!奇怪的是,它也有一个缺失>在末端跨度) – rubo77

+0

@ rubo77虽然它的工作(这是一个错字),你应该关闭它:) –

+0

我补充一点:'input = input.replace(“
”, “”);'那么像'some
words'这样的东西显示正确(也许类似于'
')。我在这里使用它:https://github.com/rubo77/TableCSVExport/blob/9510563234eba1595a2c6de4b0420456d79f5f2e/jquery.TableCSVExport.js#L141 – rubo77

1

我想你从一个表单输入/ textarea的字段输入值。 尝试做这样的事情:

var output = $('<div>' + input + '</div>').text();