从输入字段读取属性时 HTML 编码丢失

2024-04-14

我使用 JavaScript 从隐藏字段中提取一个值并将其显示在文本框中。隐藏字段中的值被编码。

例如,

<input id='hiddenId' type='hidden' value='chalk &amp; cheese' />

被拉入

<input type='text' value='chalk &amp; cheese' />

通过一些 jQuery 从隐藏字段获取值(此时我丢失了编码):

$('#hiddenId').attr('value')

问题是当我读到chalk &amp; cheese从隐藏字段来看,JavaScript 似乎失去了编码。我不希望该值是chalk & cheese。我要的是字面意思amp;被保留。

是否有 JavaScript 库或 jQuery 方法可以对字符串进行 HTML 编码?


EDIT:这个答案是很久以前发布的,htmlDecode函数引入了 XSS 漏洞。它已被修改,将临时元素从div to a textarea减少 XSS 机会。但现在,我鼓励您使用 DOMParser API,如其他答案 https://stackoverflow.com/a/34064434/5445.


我使用这些功能:

function htmlEncode(value){
  // Create a in-memory element, set its inner text (which is automatically encoded)
  // Then grab the encoded contents back out. The element never exists on the DOM.
  return $('<textarea/>').text(value).html();
}

function htmlDecode(value){
  return $('<textarea/>').html(value).text();
}

基本上,textarea 元素是在内存中创建的,但它永远不会附加到文档中。

On the htmlEncode函数我设置了innerText的元素,并检索编码innerHTML;于htmlDecode函数我设置了innerHTML元素的值和innerText被检索到。

检查一个正在运行的例子here http://jsbin.com/ejuru.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从输入字段读取属性时 HTML 编码丢失 的相关文章

  • 将数组中的所有元素相乘

    我在这里找不到我真正想要的例子 我想将所有数组元素相乘 因此如果数组包含 1 2 3 总和将为 123 6 到目前为止 我已经得到了这段代码 但它返回未定义 function multiply array var sum 1 for var
  • 仅隐藏那些选择了空值的选择框

    我只想隐藏那些选择了空值的选择框 我有以下 HTML 和 jQuery div class form item div
  • 添加选项以选择框而不用 Internet Explorer 关闭该框?

    我正在尝试构建一个包含多个下拉选择框的网页 这些下拉选择框在首次打开时异步加载其选项 这在 Firefox 下工作得很好 但在 Internet Explorer 下则不然 下面是我想要实现的目标的一个小例子 基本上 有一个选择框 ID 为
  • 更改 CSS 网格中的列顺序

    我正在研究 CSS 网格 当我在桌面尺寸上查看它时 min width 769px 我有单行三列 像这样的事情 col 1 col 2 col 3 我可以使用 css grid 移动列 以便我可以在移动布局上执行类似以下操作吗 col 1
  • 当表格在 IE 中获得焦点时,表格滚动条会向上跳跃

    问题 我有一个table有包装的div with overflow y auto 一旦table获得焦点 滚动条向上跳 我怎样才能防止这种情况发生 我经历过这种行为IE9 不在 Chrome 中 请注意 我已添加tabindex到桌子上 以
  • 如何在服务器端按钮点击时关闭当前标签页?

    我尝试在确认后关闭当前选项卡 因此我将以下代码放在确认按钮的末尾 但选项卡没有关闭 string jScript ClientScript RegisterClientScriptBlock this GetType keyClientBl
  • jQuery 价格滑块过滤器

    我已经创建了 jquery 价格滑块 但我不知道如何过滤我的结果 以便在滑动时您只能看到具有该值范围内的产品 HTML div class demo p p div
  • Jquery 自动完成 - 预填充文本字段

    我有一个自动完成字段 改编自地理自动完成以查找地理位置 当用户从列表中选择位置时 我会获取纬度 经度和用于搜索的其他一些信息 然而 现在只有当用户实际从自动完成列表中进行选择时它才有效 而不是开始键入并单击 Enter 例如他们尚未从列表中
  • 我可以在不使用 Jquery UI 的情况下获得 Jquery Pulsate Effect 吗?

    我遇到了由于某种原因无法使用 Jquery UI 的情况 我正在尝试在不使用 Jquery UI 的情况下获得 Jquery UI 脉冲效果 与此链接类似 http docs jquery com UI Effects Pulsate ht
  • 清理 html 字符串中的所有脚本

    HTML5 剪贴板很棒 但我正在寻找一种使其安全的方法 用户正在将文本 html 粘贴到我的网页中 这允许他们粘贴图像 表格等 我正在寻找一种方法 在将粘贴的内容添加到页面之前删除所有脚本 我需要删除
  • Google 地图 InfoBubble PixelOffset(从标记上方的默认位置移动)

    我正在尝试实现一个自定义 infoBubble 它的框打开到标记的侧面 而不是顶部的默认位置 事实证明这比预期的要困难 使用普通的infoWindow 您可以使用pixelOffset 请参阅此处文档 https developers go
  • 不可见的 reCAPTCHA - 缺少必需的参数:sitekey

    我正在为每个带有具有类的按钮的表单动态加载不可见的 reCAPTCHAg recaptcha 我遇到的问题是验证码未正确加载 我不知道为什么 我按照验证码网站上的文档进行操作 但我不确定如何以及为什么会出现此错误 Uncaught Erro
  • 简单的颜色变化

    我正在创建一个用户界面 用户可以在其中更改页面的颜色值 我想要的是获取分配给其背景颜色的值并将其变亮一定程度 我只是想获得一条亮点线 而不必每次都制作新图像 示例 用户将背景颜色设置为 ECECEC 现在我希望某个元素边框变成 F4F4F4
  • 当选项卡重新加载(chrome 扩展)时,如何运行此脚本?

    所以我想在指定 URL 中重新加载选项卡时运行脚本 它几乎可以工作 但实际上 id 不能 这是我的清单文件 manifest version 2 name Sample Extension description Sample Chrome
  • 如何仅突出显示嵌套表的最里面的表行?

    我有几个嵌套表 我想突出显示鼠标指针下方的最里面的行 我怎样才能做到这一点 一些提示 我使用嵌套表来显示递归表格数据 表可以嵌套 10 层 嵌套正如您所期望的那样 table tr td table tr td table tr td 可能
  • tr 元素周围的边框不显示?

    Chrome Firefox 似乎不渲染边框tr 但如果选择器是 它会渲染边框table tr td 如何在 tr 上设置边框 我的尝试 不起作用 table tr border 1px solid black table tbody tr
  • 角度 ng-repeat 根据条件添加样式

    我在 div 列表上使用 ng repeat 并且在渲染此 div 的 json 中手动添加项目 我需要定位我在 json 中添加的最后一个 div 它会自动在屏幕上渲染 即 couse 光标所在的位置 其余部分保持在相同位置 但没有给出渲
  • 如何从react-bootstrap复选框获取值/属性?

    我正在尝试使用反应引导复选框 https react bootstrap github io components html forms controls https react bootstrap github io components
  • 背景大小:封面在视网膜显示屏上看起来像素化

    可以看到我正在开发的网站here http ourcityourstory com dev 如果你查看 iPad 3 或 iPhone 4 上的 关于 或 联系 部分 背景看起来全都是疯狂的像素化 我有background size set
  • R闪亮:使用闪亮的JS从数据表中获取信息

    我想读出所有列名称以及它们在数据表中显示的顺序 由于不同的原因 我无法使用 stateSave 等选项 我对 JS 没有什么把握 但我确信用它可以完成 所以我需要你帮助我 我尝试过类似的代码片段 datatable data callbac

随机推荐

  • 如何获取 XDocument 的独立副本?

    我正在尝试创建一个新的 XDocument 如下所示 var xmlString documentDictionary documentKey ToString SaveOptions DisableFormatting XDocument
  • 移动语义对于 Rust 中的引用透明性意味着什么?

    我正在尝试弄清楚移动语义如何影响引用透明度 参考透明度 https stackoverflow com q 210835 5986907 RT 允许我们用结果替换任何表达式 而不改变程序的含义 释义自 例如 我可以替换1 1我的程序中的任何
  • 如何在 R 中创建具有相同色标的栅格图

    我正在使用 R 中的 raster 包从栅格文件创建一些地图 我想创建比较栅格 并排显示多个地图 为此 重要的是 无论每个地图中的值如何 所有地图使用的色标都相同 例如 如果地图 1 的值介于 0 1 之间 而地图 2 的值介于 0 0 5
  • 使用perl XML::LibXML来解析

    我正在使用 perl 的 XML LibXML 模块来解析来自设备的 XML 响应 看来我成功获取数据的唯一方法是修改设备的 XML 响应 以下是来自设备的 XML 响应
  • 在 PHP 代码中隐藏数据库登录信息

    我是网络编程的初学者 我正在尝试创建一个从 SQL 数据库读取数据的简单网站 起初我只是写了我的数据库密码并直接登录到php代码 这显然不是一个好主意 那么 更 更 安全 的方法是什么 我读到关于将 php 代码放入一个单独的文件中 这意味
  • 展平 mongoDB 中的嵌套 JSON 结构

    我有一个存储在 MongoDB 中的对象 如下所示 id 123 name xyz attrib address 123 xyz rd phone 123 456 7890 我想扁平化这个结构 这样就没有attrib场 我只是有addres
  • Eclipse 插件和 Maven 依赖项中存在的“groovy-all”jar 之间的兼容性问题

    在我的 POM 中 有一个依赖项 spock core 1 0 groovy 2 3 它将 groovy all 2 3 10 添加到我的项目中 而且 我的 eclipse groovy 插件包含 groovy all 2 3 7 jar
  • SQL性能问题如何修改下面的脚本?

    我编写了一个 SQL 查询 涉及 INNER JOIN LEFT OUTER JOIN UNION 和一个需要很长时间执行的子查询 我的 SQL 技能不是很好 如果有人可以帮助我如何优化以下查询以使其更快 我将不胜感激 SELECT Bra
  • 求解微分方程 Sympy

    我一直没能找到这个微分方程的特定解 from sympy import m float raw input Mass n gt g 9 8 k float raw input Drag Coefficient n gt v Function
  • @Context 返回 Proxy 而不是 HttpServletRequest (代理范围内没有线程本地值)

    我不太明白为什么 Context依赖注入返回 Proxy random number 实例的集合 而不是 HttpServletRequest 或 HttpServletResponse 我正在使用 Glassfish 3 1 2 2 及其
  • 如何在按钮单击时使用 jQuery 验证插件

    我正在尝试执行 jQuery 验证插件 但遇到了一些问题 在同一个按钮上 我必须首先执行验证 当验证成功时 它通过获取该按钮的 id 来执行一些其他 jQuery 代码 例如查看下面的代码 function form insert vali
  • Bootstrap 3 的活动按钮

    在我的导航栏中 我希望当我单击按钮时它们变为活动状态 阴影 现在 我只能永久使它们处于活动或非活动状态 但不知道单击它们后如何更改它 我正在使用新的 Bootstrap 3 0 例如 不活跃 li li Active li class ac
  • Chrome 扩展已禁用“此扩展可能已损坏”Chrome 63.0.3239.84

    我有一个私有 Chrome 扩展程序 可以打开一个文本框并使用文本框中的输入在新选项卡中打开 URL 它一直工作正常 直到上周末 Chrome 更新提示新的 此扩展程序可能已损坏 错误 在 Windows 上 Chrome 将禁用该扩展 在
  • C++ 重载运算符 << for std::string

    我现在刚刚看到另一个简单的 C 代码使用 sprintf 将 C 内置函数附加到字符数组中 我想足够了 我可以帮助提供简单 轻量级 附加和非格式化功能std string 但由于它将被签入团队的通用代码中 我希望它是完美的 所以我需要一些建
  • 如果订单具有此特定类别,请更改 Woocommerce 电子邮件主题

    我只是想知道如果订单具有特定类别 例如 预购 是否可以更改电子邮件主题 我想将 PO 放在开头 PO 新客户订单 0000 然后客户的所有其他订单都会收到默认电子邮件主题 新客户订单 0000 add filter woocommerce
  • 地理编码 API 的准确度如何?什么是最准确的?

    我正在使用具有地理编码功能的谷歌地图 API 创建一个应用程序 显然 我想使用最准确的api 我给应用程序一个地址 我需要在地图上找到它 但我只要找到纬度和经度就可以了 然后我可以使用它将其合并到我选择的任何地图 api 中 根据您的经验
  • Scala 中的“Prolog 风格”:与过程代码混合?

    继续Scala 中的 prolog 风格 是什么 https stackoverflow com questions 73611934 what is prolog style in scala 我想在 Scala 3 中结合逻辑推理和过程
  • 如何刷新 Kendo UI 网格

    我正在尝试刷新 Kendo UI 网格 但尚未成功 有人可以告诉我我错过了什么或我做错了什么吗 我有以下代码 cshtml btnRefresh click function e ajax type POST url Url Content
  • iOS消费API设计

    我将为 Web 应用程序开发一个 iOS 应用程序 网络应用程序使用代码点火器 我将创建一个 iOS 应用程序将使用的 API 服务 我正在考虑创建一个 api 版本 这样当 web api 发生变化时 iOS 应用程序就会知道 担忧 当
  • 从输入字段读取属性时 HTML 编码丢失

    我使用 JavaScript 从隐藏字段中提取一个值并将其显示在文本框中 隐藏字段中的值被编码 例如