江湖救急!!js获取下拉框DropDownListFor数组中遍历的值
HTML代码:
@Html.DropDownListFor(w => w.DetailList[i].Meetcode, ViewBag.MeetNameChanne as List<SelectListItem>, new { Class = "txt_input_c ", Onchange = "MeetChange()" })
JS代码:
function MeetChange() {
var meetname = $("#Meetcode").find("option:selected").text();
var meetname2 = $("#Meetcode").val();
if (meetname2 != "-1" && meetname2 != "") {
$("#Meetname").val(meetname);
} else {
$("#Meetname").val("");
}
}
问题:meetname 和 meetname2 都为“ ” 取不到值 。是什么原因???
如果HTML代码这样写:
@Html.DropDownListFor(w => w.Recruitcode, ViewBag.RecruitChannel as List<SelectListItem>, new { Class = "txt_input_c ", Onchange = "RecruitChange()" })
JS代码能取到值:
function RecruitChange() {
var belongname = $("#Recruitcode").find("option:selected").text();
var belong = $("#Recruitcode").val();
if (belong != "-1" && belong != "") {
$("#Recruitname").val(belongname);
} else {
$("#Recruitname").val("");
}
}
为什么w => w.DetailList[i].Meetcode的取不到值???请问js要怎么写?
回答
JS第一行加个debug,断点一下就知道为什么了, 断点到meetname处,ELements处
确认一下这个属性本身是否有值,代码一般不会骗人,估计ELements本身就没这个属性或者你属性少了某些字母拼写错误