我知道我可以通过执行以下操作来获取所有(对象)值:
$("input").tagsinput('items')
正如Bootstrap tagsinput webpage
我想要做的是将鼠标悬停在标记上时获取特定值。
问题是悬停事件应该在span
元素上,而示例中的值似乎只能从input
元素中恢复。
以下是带有代码的jsfiddle。向下滚动以查看他们想要从中获取值的事件类型。例如,当徘徊在华盛顿'我想看{ "value": 4 , "text": "Washington" , "continent": "America" }
答案 0 :(得分:1)
这就是我解决这个问题的方法。正如@CBroe建议的那样,我们的想法是从输入元素中获取所有项目,然后尝试获取元素的索引。
$(".tag").hover(function() {
//get all data items
var allTags = $("#inputTags").tagsinput('items');
//get all tag elements
var listOfChildren = Object.keys(this.parentElement.children)
//find out which index I hovered over
var tagIndex;
var that = this;
listOfChildren.forEach(function(ee, ff) {
if (that.parentElement.children[ee] == that)
tagIndex = ff;
});
// get the corresponding data item
var objectDataClicked = allTags[tagIndex];
alert(objectDataClicked.value + '-' + objectDataClicked.text + '-' + objectDataClicked.continent)
})
你可以找到jsfiddle here