javascript - 在 JavaScript 中转义 HTML

标签 javascript php html

当我用 JavaScript 构建 HTML 时,我不断地转义双引号。例如

$(wrapper).append("<input type=\"text\" name=\"thingummy[" + id + "]\" data-id=\"" + data_id + "\" id=\"" + id + "_" + data_id + "\" /> <br>"); 

而且,当有很多引号时,我经常会在转义哪些引号时犯错误。结果我花在修复它们上的时间比我想要的还要多。

有没有比我正在使用的方法更好(更快/更安全/更易读)的 HTML 构建方法?

更新

有一个相当重要的点我忘了提及!我使用 PHP 输出此 JavaScript。所以,我有这样的代码:

echo '$(wrapper).append("<input type=\"text\" name=\"thingummy[" + id + "]\" data-id=\"" + data_id + "\" id=\"" + id + "_" + data_id + "\" /> <br>");';

这使得使用单引号成为一个问题('因为它们最终破坏了 PHP!这是我不断遇到的另一个问题,当我忘记我正处于某些 PHP 中间并使用单引号时,如下面评论)。

最佳答案

您也许可以使用templating strings在 JavaScript 中。使用 ${var} 语法将变量插入字符串也变得简单。

echo '$(wrapper).append(`<input type="text" name="thingummy[${id}]" data-id="${data_id}" id="${id}_${data_id}" /> <br>`);';

关于javascript - 在 JavaScript 中转义 HTML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39670770/

相关文章:

javascript - 将参数作为字符串而不是 jquery 中的变量传递

html - CSS:分页后重复表头(打印 View )

javascript - AngularJS - $http.post 发送请求参数而不是 JSON 的任何方式?

javascript - 在您的 Google Map API V3 请求中将 clientId 和签名放在哪里?

javascript - 使用多个 div 的单击功能不起作用

将数据添加到 MySQL 数据库的 PHP 语法错误

php - Drupal 7 views_embed_view 和模板

javascript - 我希望湿度和人数字段与我的温度字段具有相同的功能

javascript - 在angular js中结合绑定(bind)项和表达式

html - Rails CSS 中 link_to image_tag 上的圆 Angular