如何添加自定义属性动态选择选项,以及如何获取它使用javascript或dojo

How to add custom attribute dynamically to Select Option and how to fetch it using javascript or dojo

本文关键字:dojo 获取 何获取 javascript 自定义属性 添加 何添加 动态 选择 选项      更新时间:2023-09-26

我知道,我知道一定有一些讨论这个话题的线程。但我搜索了一下,并没有得到符合我需要的答案。我们开始:

我正在添加自定义属性以选择选项,但我无法获取特定属性的值,

Option1 = domConstruct.create("option", {});
Option1.innerHTML = "2015";
Option1.value = "2015";
domAttr.set(Option1, "Type", "Input");
domAttr.get(evt.currentTarget[this.selectedIndex], "Type"); 
or
domAttr.get(evt.currentTarget.this.selectedIndex, "Type");
or
evt.currentTarget.selectedIndex.getAttribute('Type');
or
evt.currentTarget[this.selectedIndex].getAttribute('Type');

这个问题不够清楚。获取select > option元素中的值。你可以使用jquery $("select").on("change", function(){ console.log( $(this).val()); });

首先,当你在堆栈溢出这里提问时,请保持问题清晰,并提供一些干净的代码摘录。

其次,我建议在向任何元素添加data属性时坚持HTML5有效符号,以避免与元素属性发生冲突。所以让我先建议

domAttr.set(Option1, "data-option-type", "input");

一旦你通过

连接到包含选项的输入元素
on(input, "change", function(evt){
  var input = evt.currentTarget;
  var option = input.options[input.selectedIndex];
  // or
  // var option = input.selectedOptions[0];
  var optionType = domAttr.get(option, "data-option-type");
});

希望对你有帮助。