gpt4 book ai didi

javascript - 使用 JQuery 的 JavaScript 中的 Dropdown 未调用单击事件

转载 作者:行者123 更新时间:2023-11-28 09:03:00 25 4
gpt4 key购买 nike

我有两个下拉菜单“月份”和“年份”。根据年份,月份列表会发生变化。 enter image description here这工作正常,但由于某种原因我的“跨度字段”没有得到更新。问题是,当用户选择一个月时,点击事件没有被调用。注意:今年表现完美。

隐藏下拉div

function Dropdown (element) {
$("#month div, #year div").hide(); // hide all dropdowns
if (element) $("#"+element+" div").toggle(); // show dropdown of specified element
}

根据下拉年份值显示列表的逻辑

function UpdateMonths(){
var temp = "";
if (parseInt(Get.Year()) <= 2012){
temp = "<p>Month1</p>";
}else{
temp = "<p>Month9</p>";
}
return temp;
}

显示月份或年份列表

$("#month span, #year span").click(function(event) {

$("#month div").html(UpdateMonths()); // IMPORTANT Show the right list of months

event.stopPropagation();
if (!$(this).hasClass('disabled')) { // only open downdown when not disabled
Dropdown($(this).parent().attr("id"));
} else Dropdown(); // hide all dropdown menues
});

用户选择他想要的值。几个月没有工作

$("#location div p, #month div p, #year div p").click(function() {

var value = $(this).text(); // grab new location name/month/year.
$(this).parent().parent().children("span").text(value); // update selected location name/month/year.
RequestToServer();
});

月份下拉列表

<div id="month">
<span class="input">Januar</span>
<div class=".dropdown">
<p></p>
</div>
</div>

最佳答案

选择器应该是:

$("#month, #year").click(function() {

这样做的原因是您想要检测对 #month#year div 内任意位置的点击。通过在原始代码中定位跨度,您只能在跨度本身上获得单击事件,默认情况下,跨度是内联元素,因此它不会填充 100% 宽度。

关于javascript - 使用 JQuery 的 JavaScript 中的 Dropdown 未调用单击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17473829/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com