我的下拉列表有一个自定义属性,我想要发生的是在标签标签中显示自定义属性值。
这是一个代码片段:
function setDesignation(d){
var designation = d.getAttribute("data-designation");
if(designation != null){
document.getElementById('designation').innerHTML = designation;
}else{
document.getElementById('designation').innerHTML = 'Name';
}
//alert(d.getAttribute("data-designation"));
}
<div>
<select onchange="setDesignation(this)">
<option value="1" data-designation="President">Mathew</option>
<option value="2" data-designation="CEO">Mark</option>
<option value="3" data-designation="Manager">Luke</option>\
<option value="4" data-designation="">John</option>
</select>
</div>
<div>
<label id="designation">Designation</label>
</div>
问题是我无法获得自定义属性的值,即"data-designation"。我试图把它放在一个 alert() 方法中来查看值,它说"null"。即使我删除了 if else 语句,它仍然返回 null。我不知道代码有什么问题,所以请帮助我。
我试图找到解决方案,但我发现的都是 jQuery。我不擅长 jQuery,所以我想要一个 PURE JAVASCIPT 解决方案。
PS,如果您的解决方案是将它存储在 value 属性中,那么这不是我要找的。
你不想要选择数据属性,你想要选择的选项数据属性:
var designation = d.options[d.selectedIndex].getAttribute("data-designation");
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句