Jquery.next()不起作用
我正在用天填充下面的html结构,这些天将包括一周中的某一天以及一个月中的某一天。第一个“天”按预期填充,但使用Jquery.next()不起作用,jquery,Jquery,我正在用天填充下面的html结构,这些天将包括一周中的某一天以及一个月中的某一天。第一个“天”按预期填充,但使用.next()我无法更改resultcontainer中的同级。有什么建议吗 <div id="eventInfoWindow"> <div id="dayOneEvents" class="eventContainers"> <div id="dayOneHeader" class="eventHeaders">
.next()
我无法更改resultcontainer
中的同级。有什么建议吗
<div id="eventInfoWindow">
<div id="dayOneEvents" class="eventContainers">
<div id="dayOneHeader" class="eventHeaders">
<p id="dayOneDay" class="eventDay"></p>
<p id="dayOneWeek" class="eventWeek"></p>
</div>
</div>
<div id="dayTwoEvents" class="eventContainers">
<div id="dayTwoHeader" class="eventHeaders">
<p id="dayTwoDay" class="eventDay"></p>
<p id="dayTwoWeek" class="eventWeek"></p>
</div>
</div>
<div id="dayThreeEvents" class="eventContainers">
<div id="dayThreeHeader" class="eventHeaders">
<p id="dayThreeDay" class="eventDay"></p>
<p id="dayThreeWeek" class="eventWeek"></p>
</div>
</div>
<div id="dayFourEvents" class="eventContainers">
<div id="dayFourHeader" class="eventHeaders">
<p id="dayFourDay" class="eventDay"></p>
<p id="dayFourWeek" class="eventWeek"></p>
</div>
</div>
<div id="dayFiveEvents" class="eventContainers">
<div id="dayFiveHeader" class="eventHeaders">
<p id="dayFiveDay" class="eventDay"></p>
<p id="dayFiveWeek" class="eventWeek"></p>
</div>
</div>
</div>
相关jquery
$('#searchResultsContainer').on({
mouseenter: function () {
$(this).css("background-color", "rgba(0,255,0,0.3)");
},
mouseleave: function () {
$(this).css("background-color", "transparent");
},
click: function () {
$.post("getClassEvents.php", {
id: $(this).attr("id")
},
function (data) {
alert(data);
$(".eventHeaders > p").text("");
$(".eventContainers > div:not(.eventHeaders) ").children().remove();
var dateDays = data.split("@")[0].split(",");
var resultsContainer = $(".eventHeaders").first();
for (var i = 0; i < 4; i++) {
resultsContainer.find(".eventDay").text(dateDays[i].split(".")[0]);
resultsContainer.find(".eventWeek").text(dateDays[i].split(".")[1]);
resultsContainer = resultsContainer.next();
}
});
}
}, " div");
$('searchresultcontainer')。在({
鼠标指针:函数(){
css(“背景色”,“rgba(0255,0,0.3)”);
},
mouseleave:function(){
$(this.css(“背景色”、“透明”);
},
单击:函数(){
$.post(“getClassEvents.php”{
id:$(this.attr(“id”)
},
功能(数据){
警报(数据);
$(“.eventHeaders>p”).text(“”);
$(“.eventContainers>div:not(.eventHeaders)”).children().remove();
var dateDays=data.split(“@”)[0]。split(“,”;
var resultcontainer=$(“.eventHeaders”).first();
对于(变量i=0;i<4;i++){
resultContainer.find(“.eventDay”).text(dateDays[i].split(“.”[0]);
resultContainer.find(“.eventWeek”).text(dateDays[i].split(“.”[1]);
resultcontainer=resultcontainer.next();
}
});
}
}“div”);
。eventHeaders
在DOM中没有任何同级。它是它的父级中该级别的唯一元素
相反,请将ResultContainer设置为.eventContainers
,因为它包含您要查找的同级
var resultsContainer = $(".eventContainers").first();
for (var i = 0; i < 4; i++) {
resultsContainer.find(".eventDay").text(dateDays[i].split(".")[0]);
resultsContainer.find(".eventWeek").text(dateDays[i].split(".")[1]);
resultsContainer = resultsContainer.next();
}
.eventHeaders
在DOM中没有任何同级。它是它的父级中该级别的唯一元素
相反,请将ResultContainer设置为.eventContainers
,因为它包含您要查找的同级
var resultsContainer = $(".eventContainers").first();
for (var i = 0; i < 4; i++) {
resultsContainer.find(".eventDay").text(dateDays[i].split(".")[0]);
resultsContainer.find(".eventWeek").text(dateDays[i].split(".")[1]);
resultsContainer = resultsContainer.next();
}
您的
resultcontainer
由$(“.eventHeaders”)
填充,它是.eventContainers
因此,既然要转到下一个.eventContainers
元素,就应该用
var resultsContainer = $(".eventContainers").first();
如果您查看文档,您将看到它与同级(同级指共享同一父级的元素)一起工作。您的
resultcontainer
由$(“.eventHeaders”)
填充,这是.eventContainers
因此,既然要转到下一个.eventContainers
元素,就应该用
var resultsContainer = $(".eventContainers").first();
如果您查看文档,您将看到它适用于同级(同级指共享同一父级的元素)那么,您的目标是将
.eventHeaders
作为您的resultcontainer
当对象
位于同一平面(同级
)上时,使用.next()
)
尝试将
.eventContainers
作为目标。好吧,您将.eventHeaders
作为您的结果容器
当对象
位于同一平面(同级
)上时,使用.next()
)
尝试定位
.eventContainers
。只需做一个简单的选择。我们可以通过这种方式更轻松地进行测试。我看不到HTML
中列出的resultcontainer
。它是一个jquery对象,不是HTML元素。只需创建一个。我们可以通过这种方式更容易地进行测试。我看不到HTML
中列出的resultcontainer
。它是一个jquery对象,而不是HTML元素。这非常有效。起初我使用了.eventContainers
,但它不起作用。我的代码中的其他地方一定有错误,在搜索过程中发生了更改。我最初试图将所有eventHeader
元素存储在jquery对象中,但当我试图通过索引resultcontainer[I]
访问它们时,它无法工作。知道为什么吗?没关系,想出来了。这些索引对象是原始Dom,必须用jquery包装。这非常有效。起初我使用了.eventContainers
,但它不起作用。我的代码中的其他地方一定有错误,在搜索过程中发生了更改。我最初试图将所有eventHeader
元素存储在jquery对象中,但当我试图通过索引resultcontainer[I]
访问它们时,它无法工作。知道为什么吗?没关系,想出来了。这些索引对象是原始Dom,必须用jquery包装它们。