我尝试过这个问题,但没有成功:Select2 get html data attribute
如何访问引用链接中processResults函数中传递的数据的html属性?有人可以提供一个可用的html数据属性的工作示例吗?或者简要说明如何/在何处获得这些元素?
Edit 我想在ajax调用的processResults阶段获取html元素 . 在引用的链接中,提供的解决方案始终返回undefined . 另外,我想收到processResults函数发送的项目的HTML属性 .
Second Edit 我会解释我想做什么 . ajax调用返回的项目按类别分组 . 当从一个类别中选择一个项目时,同一类别中的所有其他项目都将被禁用 . 我想通过获取processResults函数返回的项的html属性并连续禁用它来实现此目的 .
代码相当长,所以我将重点介绍更相关的领域 .
html部分如下所示:
<select class="form-control attributoSelect2" name="attributiSelezionati" id="attributoSelect2" value="@Model.AttributiSelezionati"></select>
然后我使用以下配置更新此列表:
$('.attributoSelect2').select2({
placeholder: "Cerca Attributo",
multiple: true,
allowClear: true,
minimumInputLength: 0,
ajax: {
dataType: 'json',
delay: 150,
url: "@Url.Action(MVC.Configurazione.Attributi.CercaAttributi())",
data: function (params) {
return {
search: params.term,
};
},
processResults: function (data) {
aaList = $(this).data('ajax-Search'); // this always returns undefined
return {
results: data.map(function (item) {
return {
id: item.GroupId,
text: item.Descrizione,
children: item.Children.map(function (itemC) {
return {
id: itemC.Id,
groupid: itemC.GroupId,
text: itemC.Descrizione,
};
})
};
})
};
},
}
});
如果有什么不清楚的地方请告诉我,所以我希望能让它更清楚 .
我在帖子中添加了更多信息,有人可以删除暂停警告吗?