是否可以从select2内访问数据属性?
$('select').select2({
ajax: {
url: url + '&id=' + $(this).attr('data-id')
//...
}
});
//...
<select data-id="1"></select>
<select data-id="2"></select>
<select data-id="3"></select>
答案 0 :(得分:2)
要将自定义参数传递给select2中的ajax网址,您应该使用data
ajax函数:
$('select').select2({
ajax: {
url: "zee/base/url" // base url, no params
data: function(params) {
return {
q: params.term, // search term
id: $(this).data('id') // ta daaaa!
page: params.page
};
},
// moar ajax options
},
// moar select2 config options
})
作为一般说明,select2配置选项中的this
指的是select2实例(它是一个对象),上面概述的this
函数中的data
指的是DOM元素select2被调用,因此jQuery包装器$(this)
具有.data()
方法。
答案 1 :(得分:1)
阅读文档时,它说您可以将url作为数据类型插入html select标记中,如下所示:
public class Filter {
...
@OneToMany(mappedBy="cart")
private List< FilterComponents> filterComponents;
此url将在调用时覆盖您在函数内部设置的选项,因此您在html中将其设置为的每个选项均使用不同的选项。