1
无法读取的未定义的属性“数据”
在Object.city无法读取的未定义的属性“数据”cities.statename.data产生错误的Object.city
问题是我打电话状态动态,当我写城市.UP.data它显示正确的结果,并且当我添加cities.statename.data这里状态名称动态生成时,我选择任何状态。
person.details.getInfo.city($(this).val()); city : function (statename)
<!DOCTYPE html>
<html>
<head>
<script src="https:ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<title></title>
<script type="text/javascript">
var states = ['UP','MP','MH','DL' ];
var cities = {
"UP":{
data:['allahabad','kanpur','luckhnow']
},
"MP":{
data:['Bhopal','Jhansi','Gwalior']
}
};
var area = [
alld = ['kr','kp','mu']
];
var person = {
firstName : "John",
lastName : "Doe",
age : 50,
eyeColor : "blue",
details :{
getInfo :{
state : function()
{
return document.getElementById("slectstate").innerHTML = printHtmlAttr.option(states);
},
city : function (statename)
{
statename = statename.trim();
console.log(statename);
return document.getElementById("slectstate2").innerHTML = printHtmlAttr.option(cities.statename.data);
},
area : function (city)
{
},
}
}
}
var printHtmlAttr={
option : function(val)
{
var options='<option value="">choose</option>';
$.each(val,function(e,v){
options = options+'<option value="'+v+'">'+v+'</option>';
});
return options;
}
}
$(document).ready(function(){
person.details.getInfo.state();
$("body").on("change","#slectstate",function(){
person.details.getInfo.city($(this).val());
});
});
</script>
</head>
<body>
<select id="slectstate"></select>
<select id="slectstate2"></select>
</body>
</html>
谢谢:) ..它的工作 –