所以我有一个我一直在做的插件,它需要一个选择框然后隐藏它并在其中创建一个带有锚链接的div。 (下拉部分等工作正常。)
当我创建锚元素时,我应该在哪里存储它们代表的选项值?单击它们时,我需要能够将数据放回选择框中。
想法?意见?
答案 0 :(得分:2)
data
功能非常方便。
// Store
$('#some_selector').data('foo', 'bar');
// Retrieve
var value = $('#some_selector').data('foo');
答案 1 :(得分:1)
我想到了两个想法。首先,不要存储值,使用索引选择项目:
var realSelect = $("select");
$("#fakeselect").delegate("a", "click", function (e) {
e.preventDefault();
realSelect[0].selectedIndex = $(this).index();
});
当然,您也可以使用jQuery data
函数将值与链接相关联:
$("option").each( function(i, el) {
$("<a />", {
html: el.innerHTML,
data: { val: $(el).val() }
}).appendTo("#fakeselect");
});
$("#fakeselect").delegate("a", "click", function (e) {
e.preventDefault();
alert( $(this).data('val') ); // alerts value
});
答案 2 :(得分:0)
使用HTML 5 data-
属性。