javascript - 将属性作为字符串添加到 jQuery 中的 DOM 元素

标签 javascript jquery

所以我有一个存储为字符串变量的属性列表。我想将该变量添加到 <div> 。我目前很茫然。我所拥有的如下:

HTML:

<div></div>

JS:

var attributes = 'data-id="123" data-type="content" data-order="1"'

期望的输出:

<div data-id="123" data-type="content" data-order="1"></div>

最佳答案

用空格分割attributes字符串(但引号内不包含空格)

var div = document.getElementById('test');
var attributes = 'data-id="123" data-type="content new" data-order="1"';
var arr = attributes.match(/[^\s="']+|"([^"]*)"|'([^']*)'/g);

for (var i = 0; i < arr.length; i += 2)
  div.setAttribute(arr[i], arr[i + 1].replace(/"/g, ''));
<div id="test">test</div>

关于javascript - 将属性作为字符串添加到 jQuery 中的 DOM 元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42256345/

相关文章:

javascript - addEventListener 如何忽略图像并继续获取数字

JQuery Hide() 行为

jquery - 清除由 GSAP 动画设置的内联样式

javascript - jVectorMap - setFocus 错误 - jQuery

javascript - JSTree Font Awesome 复选框

javascript - 谷歌地图 : Change infoWindow's Frame

javascript - Kartik Talwar 的 Gmail.js 的 "view_thread"事件不起作用

javascript - Lodash 克隆数组与扩展运算符

javascript - ReactJS - 使用 iframe 静默更新 token

javascript - 使用 Fullpage.js 滚动到特定 anchor 时隐藏 div