javascript - 到达select2 select的data-attribute

标签 javascript jquery jquery-select2

有没有办法从 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>

最佳答案

要将自定义参数传递到 select2 中的 ajax url,您应该使用 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 实例(它是一个对象)和 data 中的 this上面概述的函数引用了调用的 DOM 元素 select2,因此 jQuery 包装器$(this) 有一个 .data() 方法。

关于javascript - 到达select2 select的data-attribute,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51370749/

相关文章:

javascript - 使用ajax为select2预选字段

javascript - 替换和计算数组中的值

javascript - 如何将自定义函数放入 javascript 对象中以便在 html 模板中使用?

asp.net - 将变量值从 javascript 传递到 ASP

c# - 使用 Selenium webdriver 处理 Select2

javascript - 具有多选选项框选项的动态表单

javascript - 将 DocRaptor Web 服务与 AngularJS 一起使用?

javascript - 当我的 iframe 加载时,会出现两个滚动条,如果我将 iframe 的滚动设置为 no,它将不会显示网站的完整内容

jquery - 使用背景大小的封面将文本准确地放置在图像上

javascript - 将文件拖放到标签上