javascript - 确定字符串是否通过 jQuery 编码为 HTML?

标签 javascript jquery string html-encode

我正在处理验证脚本,但遇到了一个非常特殊的问题。

如果用户输入的字符串恰好是经过编码的 html 字符(如 &&),它将输出为字符 (&在这种情况下)。我的问题是:是否可以编写一个函数来确定字符串是否为编码字符?因此,如果用户输入上述两个选项之一,我想启动一个特定的功能,如果它是一个非编码字符,我想做其他事情。

有办法吗?

最佳答案

根据定义,如果您不知道某物是否是编码的 HTML 实体,您就不知道。您要么将来自特定来源的所有文本视为已编码,要么未编码。为什么?因为这一切都只是文字。 “&”只是文本。我打算写“&”这里。我不想让任何人解释它,我希望它按字面意思显示为“&”。

你怎么知道用户的意思?如果您开始根据猜测替换用户输入的文本,在某些情况下您总是会搞砸。这是所有“:D”都被图形笑脸替换的典型情况,当您真正想输入“:D”时,这很烦人。

如果您希望始终准确保留用户输入的内容,请始终通过 HTML 编码函数运行所有用户输入,该函数将所有特殊字符替换为实体。参见 The Great Escapism (Or: What You Need To Know To Work With Text Within Text) .

关于javascript - 确定字符串是否通过 jQuery 编码为 HTML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13703312/

相关文章:

regex - 在 grepWin 中查找带点的文本字符串或部分文本

javascript - 如何在 JavaScript 中模拟 Selenium Webdriver 中的 HTML5 拖放

javascript - jQuery 选择器不适用于一个 div

javascript - 如何在 Aurelia 中停止和重新启动路由

javascript - 必填字段验证器在回发之前不起作用

javascript - 如何从我的字符串中删除正斜杠?

javascript - 模态弹出像谷歌

javascript - Chart Js 在鼠标悬停时显示旧数据

string - 无法使用 if 表达式附加到字符串而不是 if 语句

c# - 将一个字符串从一个字符读取到另一个字符