我有一个下拉列表,根据另一个下拉列表选项自动填充。
我使用listbox1.val来确定所选值。 但是,当我尝试获取第二个列表框的选定值时,该值将作为代码块返回。
这是我填充第二个下拉列表的地方:
else if (el.val() === "West") {
$("#drpArea").append("<option value='Barry'>Barry</option>");
$("#drpArea").append("<option value='Cardiff'>Cardiff</option>");
$("#drpArea").append("<option value='Pembroke'>Pembroke</option>");
$("#drpArea").append("<option value='Swansea'>Swansea</option>");
}
列表框按预期填充。然而当我打电话时:
$("#drpArea :selected").val
它返回一段代码,而不是选定的值。
我也试过$("#drpArea :selected").val.text
答案 0 :(得分:2)
尝试使用option:selected
并使用.val()
获取值
$("#drpArea option:selected").val() // it returns selected value
$("#drpArea option:selected").text() // it returns selected option text
$("#drpArea").val() // it returns selected value
答案 1 :(得分:1)
问题是val
是一个函数,而不是属性,因此您必须使用()
调用它。
另外,您不需要option:selected
。 select
的值是所选选项的值。所以使用:
$("#drpArea").val();