我有一个被点击的选定对象。当发生这种情况时,我想检索该对象,然后找到具有特定类值的子项,以便我可以禁用它们。
我能够得到这个对象,但是当我访问这些孩子时,我总是得到" undefined"即使我能看到孩子们。 我浏览了这个对象,我可以看到我正在寻找的类属性值。
有人可以告诉我,如果我正确引用这个吗? 以下是我的代码, 该问题的具体问题是,
var kids = clicked_obj.children(' .ui-selected');
// manually trigger the "select" of clicked elements
$(".page").click(function (e) {
console.log(e);
//var selected_divs = $(".page").find("div[class*='ui-selected']");
var selected_divs = $(".page").find(".existingFieldItem.ui-selected");
selected_divs.each(function () {
if (e.ctrlKey == true) {
var clicked_obj = e.target.parentElement;
var kids = clicked_obj.children('.ui-selected');
console.log("Ctrl clicked");
console.log($(this).attr("id"));
kids.each(function () {
$(this).removeClass("ui-selected");
});
// if command key is pressed don't deselect existing elements
$(this).removeClass("ui-selected");
$(this).addClass("ui-selecting");
}
else {
if ($(this).hasClass("ui-selected")) {
// remove selected class from element if already selected
$(this).removeClass("ui-selected");
}
else {
// add selecting class if not
$(this).addClass("ui-selecting");
}
}
});
$(".page").data("ui-selectable")._mouseStop(null);
});
});
答案 0 :(得分:2)
你错过了一个jQuery选择:
var clicked_obj = $(e.target.parentElement);
e.target.parentElement
是一个DOM元素对象,而不是jQuery选择。