我做的三级联动,和access数据库连接
我想在选择第二级select框时,同时在同一页面上的一个input text框中显示值
(第一级值直接显示在页面上,第二级值是major.jsp传递,第三级值是majorcount.jsp传递)。
可以我做的为什么老是显示不了值,用alert也弹出的是[object]。 <script type="text/javascript">
var request;
function test(){
<%--AJAX判断浏览器的类型--%>
if(window.XMLHttpRequest){
request = new XMLHttpRequest();
}else if(window.ActiveXObject){
request = new ActiveXObject("Microsoft.XMLHTTP");
}
<%--设置回调函数--%>
request.onreadystatechange = callback;
<%--得到select的值--%>
var stuacad = document.getElementById("s1").value;
var url = "major.jsp?stuacad=" + stuacad;
encodeURI(url);
//alert(url);
<%--转到其他页面index2.jsp去处理--%>
request.open("get",url,true);
request.send(null);
}
function callback(){
<%--如果成功返回--%>
if(request.readyState==4){
if(200 == request.status){
<%--得到返回的xml文件--%>
var dom = request.responseXML;
var provinceEle = dom.getElementsByTagName("major");
<%--调用innerContent函数把根节点传进去--%>
innerContent(provinceEle);
}
}
}
<%--清空select2里面的值--%>
function clearCity(){
var s2 = document.getElementById("s2")
s2.length = 0;
}
function clearDistrict(){
var s3 = document.getElementById("s3")
s3.length = 0;
}
function innerContent(provinceEle){
clearCity();
clearDistrict();
<%--用循环得到xml字节点的值--%>
for(i = 0; i < provinceEle.length;i++){
var m_nameEle = provinceEle[i].getElementsByTagName("m_id");
var m_id = m_nameEle[0].firstChild.data;
var s2 = document.getElementById("s2");
<%--并添加到select2里面--%>
s2[i] = new Option(m_id);
test1();
}
}
function test1(){
if(window.XMLHttpRequest){
request = new XMLHttpRequest();
}else if(window.ActiveXObject){
request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.onreadystatechange = callback1;
var major = document.getElementById("s2").value;
var url1 = "majorcount.jsp?major=" + major;
encodeURI(url1);
//alert(url1);
<%--转到其他页面index3.jsp去处理--%>
request.open("get",url1,true);
request.send(null);
}
function callback1(){
if(request.readyState==4){
if(200 == request.status){
var dom1 = request.responseXML;
var citeEle = dom1.getElementsByTagName("count");
innerContent1(citeEle);
}
}
}
function innerContent1(citeEle){
clearDistrict();
for(i = 0; i < citeEle.length;i++){
var d_idEle = citeEle[i].getElementsByTagName("c_id");
var c_id = d_idEle[0].firstChild.data;
var s3 = document.getElementById("s3");
s3[i] = new Option(c_id);
} //alert(s3);
}
function a1()
{
var a = document.getElementById("s2");
alert(typeof(a));
}
</script>
急人那,希望专家能够给点时间看看,谢谢了
我想在选择第二级select框时,同时在同一页面上的一个input text框中显示值
(第一级值直接显示在页面上,第二级值是major.jsp传递,第三级值是majorcount.jsp传递)。
可以我做的为什么老是显示不了值,用alert也弹出的是[object]。 <script type="text/javascript">
var request;
function test(){
<%--AJAX判断浏览器的类型--%>
if(window.XMLHttpRequest){
request = new XMLHttpRequest();
}else if(window.ActiveXObject){
request = new ActiveXObject("Microsoft.XMLHTTP");
}
<%--设置回调函数--%>
request.onreadystatechange = callback;
<%--得到select的值--%>
var stuacad = document.getElementById("s1").value;
var url = "major.jsp?stuacad=" + stuacad;
encodeURI(url);
//alert(url);
<%--转到其他页面index2.jsp去处理--%>
request.open("get",url,true);
request.send(null);
}
function callback(){
<%--如果成功返回--%>
if(request.readyState==4){
if(200 == request.status){
<%--得到返回的xml文件--%>
var dom = request.responseXML;
var provinceEle = dom.getElementsByTagName("major");
<%--调用innerContent函数把根节点传进去--%>
innerContent(provinceEle);
}
}
}
<%--清空select2里面的值--%>
function clearCity(){
var s2 = document.getElementById("s2")
s2.length = 0;
}
function clearDistrict(){
var s3 = document.getElementById("s3")
s3.length = 0;
}
function innerContent(provinceEle){
clearCity();
clearDistrict();
<%--用循环得到xml字节点的值--%>
for(i = 0; i < provinceEle.length;i++){
var m_nameEle = provinceEle[i].getElementsByTagName("m_id");
var m_id = m_nameEle[0].firstChild.data;
var s2 = document.getElementById("s2");
<%--并添加到select2里面--%>
s2[i] = new Option(m_id);
test1();
}
}
function test1(){
if(window.XMLHttpRequest){
request = new XMLHttpRequest();
}else if(window.ActiveXObject){
request = new ActiveXObject("Microsoft.XMLHTTP");
}
request.onreadystatechange = callback1;
var major = document.getElementById("s2").value;
var url1 = "majorcount.jsp?major=" + major;
encodeURI(url1);
//alert(url1);
<%--转到其他页面index3.jsp去处理--%>
request.open("get",url1,true);
request.send(null);
}
function callback1(){
if(request.readyState==4){
if(200 == request.status){
var dom1 = request.responseXML;
var citeEle = dom1.getElementsByTagName("count");
innerContent1(citeEle);
}
}
}
function innerContent1(citeEle){
clearDistrict();
for(i = 0; i < citeEle.length;i++){
var d_idEle = citeEle[i].getElementsByTagName("c_id");
var c_id = d_idEle[0].firstChild.data;
var s3 = document.getElementById("s3");
s3[i] = new Option(c_id);
} //alert(s3);
}
function a1()
{
var a = document.getElementById("s2");
alert(typeof(a));
}
</script>
急人那,希望专家能够给点时间看看,谢谢了
估计你是哪里写错啦