ajax如何处理包含多个相同控件的jsp页面

jsp页面部分代码如下,实现的功能是,通过产品的代码和等级(下拉框)传入test.jsp处理页面,并返回价格到名为Price的text控件。问题是,如果在数据库查询中,结... jsp页面部分代码如下,实现的功能是,通过产品的代码和等级(下拉框)传入test.jsp处理页面,并返回价格到名为Price的text控件。问题是,如果在数据库查询中,结果为多个产品代码和等级列表(不想把所有产品所有等级都列出来,所以就用了两次查询,第一次查出产品代码,第二次查出等级列表,但这里为简化,只用了固定的值代替),如何使用Ajax使得无论选取哪个产品的等级,都可以在相应的text控件里得到该产品,该等级的对应价格。请高手不吝赐教,能解决问题的建议都可以,感激不尽!

<html>
<head>

<script type="text/javascript">
var xmlHttp;
function createXmlHttp()
{
if(window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();
}
else
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}

function getPrice()
{
var PrdCode=document.getElementById("PrdCode").value;
var GrdCode=document.getElementById("GrdCode").value;
createXmlHttp();
xmlHttp.onreadystatechange=writePrice;
xmlHttp.open("GET","test.jsp?PrdCode="+PrdCode+"&GrdCode="+GrdCode,true);
xmlHttp.send(null);
}

function writePrice()
{
if(xmlHttp.readyState==4)
{
var price=xmlHttp.responseText;
document.getElementById("Price").value=price;
}
}
</script>

</head>
<body>

<input type="text" id="PrdCode" name="PrdCode" value="1000000079"/>
<select id="GrdCode" name="GrdCode" onblur="getPrice()">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
<option value="D">D</option>
<option value="E">E</option>
</select>
<input type="text" id="Price" name="Price" readonly="readonly"/>
<br/>

<input type="text" id="PrdCode" name="PrdCode" value="1000000080"/>
<select id="GrdCode" name="GrdCode" onblur="getPrice()">
<option value="A">A</option>
<option value="B">B</option>
<option value="C">C</option>
<option value="D">D</option>
<option value="E">E</option>
</select>
<input type="text" id="Price" name="Price" readonly="readonly"/>
<br/>
</body>
</html>
展开
 我来答
百度网友5195152
2009-09-21 · TA获得超过1164个赞
知道大有可为答主
回答量:1314
采纳率:0%
帮助的人:710万
展开全部
document.getElementById("Price").value=price;

自己定义一个数据结构
比如返回的price是这样的:PrdCode,Price

上面这句就改为:
var temp = price.split(',');
document.getElementById("PrdCode").value=temp[0];
document.getElementById("Price").value=temp[1];

如果还要区分,可以修改数据结构,前台解析

另外,你页面元素的命名也有问题,同id不能出现两个
lydawen
2009-09-21 · TA获得超过3181个赞
知道大有可为答主
回答量:2678
采纳率:50%
帮助的人:1493万
展开全部
把ajax后台处理程序改一下吧,返回的数据不再是一个,而一个xml封装的数据,含类别及价格,当然也可以用json,或者再简单就是你自己用一个识别符组装一下,在js里再分成类别及价格。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式