我有一个下拉月份,它根据所选输入的年份动态填充。
当用户单击“月份”下拉列表时,将显示月份列表。 如何使用 JQuery 获取用户选择的月份值?假设下拉列表是动态填充的。
当用户单击显示的月份列表时调用此函数
$("#month").click(function() {
var value = $(this).children("div p").val(); // return undefined
console.log("month: " + value);
});
HTLM 下拉列表
<div id="month">
<span class="input">März</span>
<div class="dropdown">
<p></p>
</div>
</div>
当用户单击下拉月份时,UpdateMonths()
函数将被调用并动态填充列表
$("#month span").click(function(event) {
$("#month div").html(UpdateMonths());
event.stopPropagation();
if (!$(this).hasClass('disabled')) { // only open downdown when not disabled
Dropdown($(this).parent().attr("id"));
} else Dropdown(); // hide all dropdown menues
});
function Dropdown (element) {
$("#month div").hide(); // hide all dropdowns
if (element) $("#"+element+" div").toggle(); // show dropdown of specified element
}
这就是我填写列表的方式
function UpdateMonths(){
var temp = "";
if (parseInt(Get.Year()) <= 2012){
for (var i = 0; i < Get.Months.length; i++) {
var monthsChain = "<p>"+Get.Months[i]+"</p>";
temp += monthsChain;
};
}else{
temp = "<p>Januar</p><p>Februar</p><p>März<p></p><p>April</p><p>Mai</p><p>Juni</p><p>Juli</p>";
}
return temp;
}
最佳答案
你可以试试
var value = $(this).find("div p").text();
或更具体:
var value = $(this).find("div.dropdown p").text();
关于javascript - 如何使用 JQuery 通过单击事件获取 <div> <p> 下拉列表中的选定值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17484769/