1

我想防止在 nicEditor 中编写 html 标签。

<div id="sample">
  <script  type="text/javascript" src="http://js.nicedit.com/nicEdit-latest.js"></script> <script type="text/javascript">
//<![CDATA[
        bkLib.onDomLoaded(function() { nicEditors.allTextAreas() });
  //]]>
  </script>
  <textarea onblur="this.value = this.value.replace(/<\/?[^>]+>/gi, '')" name="process" style="width: 300px; height: 100px;" id="process">
         hello <b>world</b>
  </textarea>
</div>  

我已经尝试过上面的正则表达式..但它不起作用..我onblur="this.value = this.value.replace(/<\/?[^>]+>/gi, '')"对简单的文本框使用相同的正则表达式。它工作正常。

我也想知道,出于安全目的,它是否是防止用户输入 html 标签的正确方法?

4

1 回答 1

1

尝试测试事件的优先级顺序。附加两个处理程序form.submittextarea.blur内部e.preventDefaultsubmit并在它们两个内部使用console.log('submit')console.log('blur')看看哪个先着火。导致问题可能出在submitwhich fires 之前blur

于 2012-08-25T05:59:44.653 回答