javascript - 访问 $(this) 值返回未定义的 jquery
问题描述
我正在尝试访问$(this)
select2 初始化内部,但它返回undefined
.
$(".tags").each(function() {
var placeholder = "Select Email";
if($(this).attr('name') === 'names[]')
placeholder = "Select Name";
$(this).select2({
tags: true,
placeholder: placeholder,
language: {
noResults: function () {
return 'Type and enter to add new';
},
},
escapeMarkup: function (markup) {
return markup;
},
createTag: function(params) {
console.log($(this).attr('name')); // returns undefined
if (params.term.indexOf('@') === -1)
return null;
return {
id: params.term,
text: params.term
}
}
})
});
select2()
为每个 初始化.tags
。我需要在$(this)
这里访问初始化内部。
我怎样才能做到这一点?
解决方案
$(this)
您可以在调用之前保留参考select2()
$(".tags").each(function() {
var placeholder = "Select Email";
var $that = $(this);
if($that.attr('name') === 'names[]')
placeholder = "Select Name";
$that.select2({
tags: true,
placeholder: placeholder,
language: {
noResults: function () {
return 'Type and enter to add new';
},
},
escapeMarkup: function (markup) {
return markup;
},
createTag: function(params) {
console.log($that.attr('name'));
if (params.term.indexOf('@') === -1)
return null;
return {
id: params.term,
text: params.term
}
}
})
});
希望这可以帮助
推荐阅读
- prolog - 怎样才能在prolog中加一个list列表呢?
- c# - 如何使用 EF Core 将单个主键更改为复合主键
- mongodb - 重写聚合以映射mongo中的reduce方法
- ios - 如何为 iOS 应用启用跨应用身份验证?
- javascript - 使用数组更新javascript中的存储数组
- html - 如何在我的 doxygen 主页中并排放置两个图像
- python - 是否可以有多个字幕?
- javascript - 读取文件、分离和 Tesseract.js 性能
- sql - 无法在 postgresql 中创建函数
- twitter - LinqToTwitter 我无法捕捉推文