1

可能重复:
Javascript 中的 HtmlSpecialChars 等效项?

我找不到可以在 HTML 中安全使用的良好字符串清理功能。我想知道这是否是一个好方法:

String.prototype.sanitize = function() {
  return $('<div></div>').text(this).html();
}
4

2 回答 2

4

对于 XSS 的清理,是的。对于清理 SQL 注入,没有。

于 2013-01-31T02:42:26.193 回答
1

要求会更好(而且仍然很容易) :

String.prototype.htmlspecialchars = function() {
  var span = document.createElement('span'),
  txt = document.createTextNode(this);

  span.appendChild(txt);

  return span.innerHTML;
}

与仍然的耦合document并不是那么糟糕,因为无论如何它都会被使用,但我更String.replace()喜欢在这个答案中使用连续的。

于 2013-01-31T03:01:50.120 回答