Javascript Json下拉列表错误
Iam newbi关于json代码如果有人能帮我解决此错误,我将不胜感激: 我有车型+年份+押金+价格 当用户第一次点击模型时,比选择年份和存款显示每月还款金额Javascript Json下拉列表错误,javascript,html,json,html-select,Javascript,Html,Json,Html Select,Iam newbi关于json代码如果有人能帮我解决此错误,我将不胜感激: 我有车型+年份+押金+价格 当用户第一次点击模型时,比选择年份和存款显示每月还款金额 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>Ca
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>Cars</title>
<link href="css/cakeform.css" rel="stylesheet" type="text/css" />
<script>
var prices = {
'model' : 'Skoda' {
'1' : {
'12300' : '959',
'13000' : '892',
'13500' : '844',
'19000' : '317'
},
'2' : {
'12300' : '542',
'13000' : '504',
'13500' : '477',
'19000' : '179'
},
'3' : {
'12300' : '403',
'13000' : '375',
'13500' : '355',
'19000' : '133'
}
};
'Tiida' {
'1' : {
'12300' : '955',
'13000' : '892',
'13500' : '844',
'19000' : '317'
},
'2' : {
'12300' : '555',
'13000' : '504',
'13500' : '477',
'19000' : '179'
},
'3' : {
'12300' : '455',
'13000' : '375',
'13500' : '355',
'19000' : '133'
}
};
};
onload = function(){
var f = document.booklets;
var model = f.model;
var qtyEl = f.qty;
var pagesEl = f.pages;
var priceEl = document.getElementById('price');
f.qty.onchange = f.pages.onchange = f.model.onchange = function(){
var qty = qtyEl[qtyEl.selectedIndex].value;
var model = modelEl[modelEl.selectedIndex].value;
var pages = pagesEl[pagesEl.selectedIndex].value
priceEl.innerHTML = prices[pages][qty][model];
};
f.qty.onchange();//initialise price field for whatever values are selected on page load
};
</script>
</head>
<body>
<fieldset>
<legend>Cars</legend>
<form name="booklets" method="" action="">
<div>Select Model:
<select class="selectClass" name="model">
<option value="Skoda">Skoda</option>
<option value="Tiida">Tiida</option>
<option value="Tyota">Toyota</option>
</select>
<div>Select Year:
<select class="selectClass" name="pages">
<option value="1">1 Year</option>
<option value="2">2 Years</option>
<option value="3">3 Years....</option>
</select>
<br><br>Select Deposit:
<select class="selectClass" name="qty">
<option value="12300">$12300</option>
<option value="13000">$13000</option>
<option value="13500">$13500</option>
</select>
</div>
<div><br>Monthly Payment: <font color="blue" size=7>$ <span id="price"></span> </font> </div>
</form>
</fieldset>
</body>
</html>
汽车
风险价值价格={
“型号”:“斯柯达”{
'1' : {
'12300' : '959',
'13000' : '892',
'13500' : '844',
'19000' : '317'
},
'2' : {
'12300' : '542',
'13000' : '504',
'13500' : '477',
'19000' : '179'
},
'3' : {
'12300' : '403',
'13000' : '375',
'13500' : '355',
'19000' : '133'
}
};
“蒂达”{
'1' : {
'12300' : '955',
'13000' : '892',
'13500' : '844',
'19000' : '317'
},
'2' : {
'12300' : '555',
'13000' : '504',
'13500' : '477',
'19000' : '179'
},
'3' : {
'12300' : '455',
'13000' : '375',
'13500' : '355',
'19000' : '133'
}
};
};
onload=函数(){
var f=文件。小册子;
var模型=f模型;
变量qtyEl=f.数量;
var pagesEl=f.pages;
var pricel=document.getElementById('price');
f、 qty.onchange=f.pages.onchange=f.model.onchange=function(){
变量数量=qtyle[qtyle.selectedIndex].值;
var model=model[model.selectedIndex].值;
var pages=pagesEl[pagesEl.selectedIndex].value
pricel.innerHTML=价格[页面][数量][型号];
};
f、 qty.onchange();//初始化页面加载时选择的任何值的价格字段
};
汽车
选择型号:
斯柯达
日产
丰田
选择年份:
一年
两年
三年。。。。
选择存款:
$12300
$13000
$13500
每月付款:$
提前感谢:您的JSON无效,因此必须修复。对于有效的JSON,应该使用
“
而不是”
,并使用类似的方法检查错误的逗号和括号
固定JSON变量:
var prices = {
"Skoda": {
"1": {
"12300": "959",
"13000": "892",
"13500": "844",
"19000": "317"
},
"2": {
"12300": "542",
"13000": "504",
"13500": "477",
"19000": "179"
},
"3": {
"12300": "403",
"13000": "375",
"13500": "355",
"19000": "133"
}
},
"Tiida": {
"1": {
"12300": "955",
"13000": "892",
"13500": "844",
"19000": "317"
},
"2": {
"12300": "555",
"13000": "504",
"13500": "477",
"19000": "179"
},
"3": {
"12300": "455",
"13000": "375",
"13500": "355",
"19000": "133"
}
}
};
然后,您的代码中有一两个输入错误,并且您访问的JSON数据不正确。您必须确保根据结构中的层次结构访问它。在这里,这意味着prices[model][pages][qty]
固定onload
功能:
window.onload = function() {
var f = document.booklets;
var modelEl = f.model;
var qtyEl = f.qty;
var pagesEl = f.pages;
var priceEl = document.getElementById('price');
f.qty.onchange = f.pages.onchange = f.model.onchange = function () {
var qty = qtyEl[qtyEl.selectedIndex].value;
var model = modelEl[modelEl.selectedIndex].value;
var pages = pagesEl[pagesEl.selectedIndex].value;
priceEl.innerHTML = prices[model][pages][qty];
};
//initialise price field for whatever values are selected on page load
f.qty.onchange();
};
演示: