jQuery从自定义属性获取多个数据
我有一个select元素,我想从中获取一些自定义数据。我不知道这个语法是否正确,但是可以得到数据吗jQuery从自定义属性获取多个数据,jquery,attributes,Jquery,Attributes,我有一个select元素,我想从中获取一些自定义数据。我不知道这个语法是否正确,但是可以得到数据吗 <select data-select="placeholder:This is title; width:300px; dissabled; hidden;"></select> 如果属性的内部有冒号[:],左边的部分我想用它作为新属性,右边的部分作为该属性的值 分号[;]用于打断此新属性 逻辑类似于样式属性 我想要这份表格的代码: $("[data-selectl
<select data-select="placeholder:This is title; width:300px; dissabled; hidden;"></select>
如果属性的内部有冒号[:],左边的部分我想用它作为新属性,右边的部分作为该属性的值分号[;]用于打断此新属性
逻辑类似于样式属性
我想要这份表格的代码:
$("[data-selectlist]").each(function(){
var $ul = $("<ul/>", {
'placeholder': $(this).attr('placeholder'),
'width' : $(this).attr('width')
});
.
.
.
});
$(“[data selectlist]”)。每个(函数(){
变量$ul=$(“
”{
'占位符':$(this.attr('占位符'),
'width':$(this.attr('width'))
});
.
.
.
});
我可以用什么替换.attr()以获得所需的结果???- 访问每个
元素$(“[数据选择]”)
.attr(“数据选择”)
- 迭代该值并创建一个对象,如
{attr1:val,attr2:val}
- 将创建的Attributes对象应用于相同(或某些)元素:
或$(this).attr(attrObj)
$(“
$(“[数据选择]”).attr(“数据选择”,函数(i,数据){
if(!data)return;//提前返回
//将数据值转换为对象属性
const attrObj=data.match(/(?!\s)[^;]+/g).reduce((acc,cur)=>{
常数p=当前拆分(“:”);
acc[p[0]=p[1]| | p[0];
返回acc;
}, {});
console.log(attrObj);
//将属性对象应用于元素
$(this.attr(attrObj)
});代码>
Select现在已隐藏!检查元素以查看应用的属性
测试
您的“jQuery这样获取数据”与您的问题无关。尽量说得更具体些。显示实际获取一些数据的JS。描述你想要的输出。请阅读。我做了一些更改。现在好多了??现在看来肯定好多了!我只是很困惑,究竟为什么你会想要隐藏、禁用一个
元素。一个
元素不能被禁用并且具有宽度属性:)它只是测试非冒号属性。我想创建一个具有完整功能xD的自定义选择选项