javascript - 使用 Javascript 检查 HTML

标签 javascript asp.net

我的网站上有一个文本框,我想阻止任何形式的 html 输入。显然我已经在服务器端阻止了它,但出于多种原因我也想使用 javascript 来阻止它。我在 Google 上进行了快速搜索,看看是否有一些现成的功能可用,但我找不到。

有人知道怎么做吗?

编辑:抱歉,如果问题不清楚。我基本上想在用户在文本框中输入 html 然后尝试提交表单时显示错误。服务器已被编程为拒绝来自文本框的 HTML 输入,但我也想在客户端阻止它。

最佳答案

HTML

<textarea id='noHTML'></textarea>

JS

var ta = document.getElementById('noHTML');

ta.onkeyup = function (e) {
 var val = this.value;


    // alternate regexp /<\/*(p|div|span)\s*.*>/g  
   // fill the above regex with all html tags 
 if(val.match(/<\/*[^<>]\s*.*>/g)) { 
  // alert('no html');
  // don't want an alert ? you can replace all html expressions

  // alternate syntax for all entities
  //  this.value = val.replace(/&/g, "&amp;").replace(/>/g, "&gt;").replace(/</g, "&lt;").replace(/"/g, "&quot;");
  // its long and slow but the choice is yours
  this.value = val.replace(/</g, '&lt;').replace(/>/g, '&gt;');  
 }

}

您可以在 jsfiddle 测试和使用它。 ;

这是解决您问题的简单方法。我给您的建议是在表单提交期间替换实体,或者如果您根本不想要它,您可以在输入时提醒用户。

关于javascript - 使用 Javascript 检查 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17891048/

相关文章:

javascript - 延迟对象如何通知它已解决的 promise ?

javascript - "this._events || (this._events = {});"是什么意思?

javascript - ASP文本框默认不可见,从JS可见

c# - 单个解决方案中的多个 MVC 项目

asp.net - 考虑到 header 名称,如何将HttpRequestBase转换为HttpRequestMessage?

javascript - React Native 在加载数据时不断跳动

javascript - 我可以在 JavaScript 的原型(prototype)函数中使用私有(private)方法吗?

c# - 使用 Powershell 创建 signalR 客户端 HubConnection

javascript - 无法点击自定义 FAB( float 操作按钮)的 NativeScript 项目

asp.net - ASP.NET 4.0 中的信任级别是否已过时?