0
我有一个textarea,我想要得到的值,然后计算开始和结束div的数量。我在提交HMTL时遇到了问题,即使它已全部被转义,但我仍然遇到如下错误:Uncaught Error: Syntax error, unrecognized expression: <div>This is a test</div>
当输入<div>This is a test</div>
到textarea时。在textarea val中使用find()与HTML字符
我希望能够保持HTML标签的内容,即能力来搜索<div
作为并列于<div
HTML
<h3>Paste your code in here</h3>
<textarea name="code" id="code" cols="30" rows="10"></textarea>
<p>
<a href="#" class="test-code-btn">Go for it!</a>
</p>
JS
$('.test-code-btn').on('click', function(){
function escapeHtml(unsafe) {
return unsafe
.replace(/&/g, "&")
.replace(/</g, "<")
.replace(/>/g, ">")
.replace(/"/g, """)
.replace(/'/g, "'");
}
var res = escapeHtml($('#code').val());
console.log('res = ' + res);
var openDivs = $(res).find('<div').length;
var closeDivs = $(res).find('</div').length;
console.log('openDivs: ' + openDivs + ', closeDivs: ' + closeDivs);
});
'.find()'方法不会执行基于文本的搜索,它会查找后代DOM元素。 – nnnnnn
感谢您的信息,是否有预先构建的jquery功能,将工作? –