ajax的所用到的功能
1:级联菜单
例子:在action中
response.setContentType("text/xml");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.println("<response>");
for(int i=0;i<shiList.size();i++){
Address address = (Address)shiList.get(i);
out.println("<city>");
out.println("<cityname>"+address.getDz()+"</cityname>");
out.println("<cityvalue>"+address.getDzdm()+"</cityvalue>");
out.println("</city>");
}
out.println("</response>");
out.flush();
out.close();
在页面中显示时处理:
function processor(){
var result;
if(XMLHttp.readyState==4){
if(XMLHttp.status==200){
result = XMLHttp.responseXML.getElementsByTagName("city");
while(document.form1.shi.options.length>0){
document.form1.shi.removeChild(document.form1.shi.childNodes[0]);
}
var option =document.createElement("OPTION");
option.text="请选择";
option.value="";
document.form1.shi.add(option);
for(var i=0;i<result.length;i++){
var option =document.createElement("OPTION");
option.text=result[i].childNodes[0].childNodes[0].nodeValue;
option.value=result[i].childNodes[1].childNodes[0].nodeValue;
document.form1.shi.add(option);
}
}
}
二.用户验证
失败时在表单旁边加警示例子:
if(xmlHttp.readyState==4){
var span12=document.getElementById("span1");
span12.innerHTML="<font color='red'>"+xmlHttp.responseText+"</font>";
}