使用JQuery,如何防止用户在输入字段中输入脚本或html?

问题描述

| 基本上,我需要能够在处理之前从输入字段中删除脚本和html。我正在使用JQuery,希望找到一种执行这种操作的标准方法。有任何想法吗?     

解决方法

        您的html:
<input class=\"striphtml\" name=\"name\" />
您的js:
$(document).ready(function() {
  // strip all html when text in input changes
  $(\".striphtml\").change(function(){
      $(this).val( $(this).text() );
  });
});
结果:
<p>This is a test.</p>
将被替换为:
&lt;p&gt;This is a test.&lt;/p&gt;
注意:正如SLaks所述,您必须在服务器端验证您的输入!     ,        您必须在服务器上执行此操作。如果在客户端上执行此操作,则您会知道有人假设您的服务器假定您的客户端代码转义了字符串,从而使人们可以手工制作HTTP消息发送到服务器。因此,由于您的服务器无法假定该内容是安全的,因此必须假定该内容是不安全的。 (否则,您最终会进行双重编码,这会很麻烦。)因此,让客户端代码进行转义既不可能,也不合适。     ,        这是您需要的出色教程。正如SLaks所说,请在服务器端进行操作。清理您的输入 讲解 您可以使用特定字符进行一些正则表达式工作,但这只会有所帮助。     ,        您根本不应该这样做。 相反,您应该在服务器上转义内容。 这样,您可以接受恶意输入(或
<
个字符)而不会受到伤害。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...