我想知道是否有可能向JQuery新选项添加其他数据.我有一些选择对象,我追加动态内容:
select.append(new Option(item.name, item.id))
Run Code Online (Sandbox Code Playgroud)
它产生一个HTML,例如:
<option value="22">Uniqa OC Zawodu</option>
Run Code Online (Sandbox Code Playgroud)
我想在选项中添加其他数据,因此我的HTML看起来像:
<option value="22" data-url="some_data">Uniqa OC Zawodu</option>
Run Code Online (Sandbox Code Playgroud)
你有什么是vanilla JavaScript,你没有使用jQuery库.使用jQuery,您可以将对象传递给它.对象的属性映射到其对应的DOM属性.请注意,data-*属性在内部由jQuery缓存,并且它们不会作为属性添加到DOM中,因此它们不可见:
$('<option/>', {
text: 'Uniqa OC Zawodu',
value: 22,
data: {
url: 'some_data',
whatever: 1
}
}).appendTo(select);
Run Code Online (Sandbox Code Playgroud)
要检索data-*属性,可以使用.data()方法:
var url = $('option').data('url');
Run Code Online (Sandbox Code Playgroud)