ajax实际的应用
2016-07-05 14:42
295 查看
假设两个选择框,前面一个是省份,后面一个是地级市。当选择某一省份的时候,后面的选择框会有此省份对应的地级市。可以根据ajax来实现。
function load{
if(true){
var baseURL = "/prpall/processPrpDBusiLevel.do?actionType=getCityInfo";
var url = baseURL + "&busiUpperCode=" + trim(field1.value)+"&busiLevel="+level;
xmlRequest = createXMLHttpRequest1();
xmlRequest.onreadystatechange = processCityCodeStateChange;
try {
xmlRequest.open("POST",url,false);
}catch (e) {
alert(e);
}
xmlRequest.send(null);
}
}
function processCityCodeStateChange(){
if (xmlRequest.readyState == 4) { // Complete
if (xmlRequest.status == 200) { // OK response
var retValue = trim(xmlRequest.responseText);
if(retValue!=""){
if(retValue.indexOf("error:")==0){
}else{
var optionArray = retValue.split(GROUP_SEPARATOR);
var value;
var text;
field2.add(new Option("请选择","",true,true));
var order = 0;
for(var i=0;i<optionArray.length;i++){
var optionText = optionArray[i].split(FIELD_SEPARATOR);
value = optionText[0];
text = optionText[1];
field2.add(new Option(text,value));
}
}
field2.add(new Option("其他城市","999999"));
}
} else {
alert("Problem: " + xmlRequest.statusText);
}
}
}
function createXMLHttpRequest1() {
try {
// Attempt to create it "the Mozilla way"
if (window.XMLHttpRequest) {
return new XMLHttpRequest();
}
// Guess not - now the IE way
if (window.ActiveXObject) {
return new ActiveXObject(getXMLPrefix() + ".XmlHttp");
}
}
catch (ex) {
}
return false;
}
服务器端(jsp):
<%
UIRateFromInfoAction uiRateFromInfoAction= new UIRateFromInfoAction();
OutputStream outputStream= response.getOutputStream();
String provinceCode= request.getParameter("provinceCode");
String cityCode= request.getParameter("cityCode");
String districtCode= request.getParameter("districtCode");
String constructCode= request.getParameter("constructCode");
double rate = uiRateFromInfoAction.getRate(provinceCode, cityCode,districtCode, constructCode);
BigDecimal bRate= new BigDecimal(rate);
bRate = bRate.setScale(2, BigDecimal.ROUND_HALF_UP);
String rateString= bRate.toString();
try {
outputStream.write(rateString.getBytes());
outputStream.flush();
} catch (Exception e) {
throw e;
}finally{
outputStream.close();
}
%>
function load{
if(true){
var baseURL = "/prpall/processPrpDBusiLevel.do?actionType=getCityInfo";
var url = baseURL + "&busiUpperCode=" + trim(field1.value)+"&busiLevel="+level;
xmlRequest = createXMLHttpRequest1();
xmlRequest.onreadystatechange = processCityCodeStateChange;
try {
xmlRequest.open("POST",url,false);
}catch (e) {
alert(e);
}
xmlRequest.send(null);
}
}
function processCityCodeStateChange(){
if (xmlRequest.readyState == 4) { // Complete
if (xmlRequest.status == 200) { // OK response
var retValue = trim(xmlRequest.responseText);
if(retValue!=""){
if(retValue.indexOf("error:")==0){
}else{
var optionArray = retValue.split(GROUP_SEPARATOR);
var value;
var text;
field2.add(new Option("请选择","",true,true));
var order = 0;
for(var i=0;i<optionArray.length;i++){
var optionText = optionArray[i].split(FIELD_SEPARATOR);
value = optionText[0];
text = optionText[1];
field2.add(new Option(text,value));
}
}
field2.add(new Option("其他城市","999999"));
}
} else {
alert("Problem: " + xmlRequest.statusText);
}
}
}
function createXMLHttpRequest1() {
try {
// Attempt to create it "the Mozilla way"
if (window.XMLHttpRequest) {
return new XMLHttpRequest();
}
// Guess not - now the IE way
if (window.ActiveXObject) {
return new ActiveXObject(getXMLPrefix() + ".XmlHttp");
}
}
catch (ex) {
}
return false;
}
服务器端(jsp):
<%
UIRateFromInfoAction uiRateFromInfoAction= new UIRateFromInfoAction();
OutputStream outputStream= response.getOutputStream();
String provinceCode= request.getParameter("provinceCode");
String cityCode= request.getParameter("cityCode");
String districtCode= request.getParameter("districtCode");
String constructCode= request.getParameter("constructCode");
double rate = uiRateFromInfoAction.getRate(provinceCode, cityCode,districtCode, constructCode);
BigDecimal bRate= new BigDecimal(rate);
bRate = bRate.setScale(2, BigDecimal.ROUND_HALF_UP);
String rateString= bRate.toString();
try {
outputStream.write(rateString.getBytes());
outputStream.flush();
} catch (Exception e) {
throw e;
}finally{
outputStream.close();
}
%>
相关文章推荐
- python之禅
- Maven settings.xml
- 工作学习中参考过的外文网站(主计算机)
- 学习使用Hystrix
- (OK) cross_compile_readline_for_android-x86_64-6.0
- 根控制器切换
- Matlab常用命令汇总
- python 利用文件锁单例执行脚本
- JBPM4.4节点详解(常用)
- intel dpdk api pci设备驱动注册和初始化过程
- 使用js模板引擎心得
- oracle11G静默安装过程——linux环境
- 错误:org.springframework.beans.factory.BeanCreationException
- 【创建WCF服务寄宿到IIS】
- AB测试结果解析
- centos6.5安装gcc6.1等c++环境
- Linux下python升级安装步骤
- centos6.5安装gcc6.1等c++环境
- Android交流(资料)QQ群 187486866
- NSUserDefaults