jQuery实现了下拉框的三级非刷新链接,并保持选中的值状态。

功能:省、市、区三级联动,利用ajax获取数据绑定、页面刷新或提交选定值,可保存并保持选定状态。

将下列代码放在单独的js文件中并在页面上调用它
复制代码代码如下所示:
获取cookie值
功能readcookie(name){
无功cookievalue = ;
var搜索= name + ;
如果(document.cookie.length > 0){
偏移量= document.cookie.indexof(搜索);
如果(偏移量)!= 1){
search.length偏移;
结束= document.cookie.indexof(;
如果(= = - 1)= document.cookie.length;
cookievalue = unescape(document.cookie.substring(偏移、结束))
}
}


返回cookievalue;
}

保存cookie值
功能writecookie(名称,价值,小时,ESCP){
var过期;
如果(小时)!= NULL){
到期日期(=新(新的日期()),GetTime()小时×3600000);
过期= ;到期=+ expire.togmtstring();
}
如果(ESCP = = true){
document.cookie =姓名+=+价值+到期;
{人}
document.cookie =姓名+=+逃跑(价值)+到期;
}
}

省、河、河、断面选择
$(函数(){())

ddlprovince = $(var $ # ddlprovince / /省份);
ddlcity = $(var $ # ddlcity ); / /锡蒂
ddlarea = $(var $ # ddlareaname ); / /区域


根据城市省查询
/ / ddlprovince.focus美元(重点); / /不添加,或设置选定的问题
ddlprovince.bind美元(改变KeyUp
如果($),瓦迩()!= 1 ){
LoadWater($(this)。瓦迩(),selectcity );
{人}
$(选择{ } >选项ddlcity id =)删除();
ddlcity.append美元($()。瓦迩(1)。Html(,请选择)))
}
从各省的选择或从新的新城市开始区域选择。
$(选择{ } >选项ddlareaname id =)删除();
ddlarea.append美元($()。瓦迩(1)。Html(,请选择)))
});


如果该城市不填充数据,则数据加载数据将加载到各省。
如果($(选择{ } >选项ddlcity id =)。长度ddlprovince.val美元(1)= =!= 1){


LoadWater(ddlprovince.val美元(),selectcity );
读取cookie,该值被设置为所选状态。
var cityName = readcookie(jq_cityname );
如果(cityName!= null cityName!=未定义cityName!){


/ / $(选择{ ID = ddlwaterxiname } >选项:包含(+ watername + ))。Attr(选择
$(选择{ } >选项ddlcity ID = {值=++ cityName })。Attr(选择
}
}

根据城市查询区域
/ / ddlcity.focus美元();
ddlcity.bind美元(改变KeyUp
如果($),瓦迩()!= 1 ){
LoadWater($(this)。瓦迩(),selectareaname );
选定的值
writecookie(jq_cityname
{人}
$(选择{名称= ddlareaname } >选项)删除();
ddlarea.append美元($()。瓦迩(1)。Html(,请选择)))
}
});


如果未填充数据区域,则加载城市数据选择数据。
如果($(选择{ } >选项ddlareaname id =)。长度ddlcity.val美元(1)= =!= 1){
LoadWater(ddlcity.val美元(),selectareaname );
读取cookie,该值被设置为所选状态。
无功areaname = readcookie(jq_areaname );
如果(areaname!= null areaname!=未定义areaname!){

$(选择{ ID = ddlareaname } >选项{值=++ areaname })。Attr(选择

}
}

ddlarea.bind美元(改变KeyUp
如果($),瓦迩()!= 1 ){
选定的值
writecookie(jq_areaname
}

});
});

功能loadwater(SelectedItem,typename){
$ ajax({
键入:获取
网址: / getwaterxiname .ashx
数据:{ useType:typename,编号:SelectedItem },
内容类型:应用程序/ JSON;字符集= UTF-8
DataType:JSON
异步:假,
成功:函数成功(数据){
BindWater(数据类型);
}
});
}

功能bindwater(数据类型){

如果(typename = = selectcity){ / /结合市

$(选择{名称= ddlcity } >选项)(去除); / /删除选项
$(选择{ ID = ddlcity })。追加($()。瓦迩(1),Html(请选择)))


对于(var i = 0;i < data.length;i++){
$(选择{ ID = ddlcity })。追加($()。瓦迩(数据{我}。市)。Html(数据{我}。市));
}
}
如果(typename = = selectareaname){

$(选择{名称= ddlareaname } >选项)(去除); / /删除选项
$(选择{ ID = ddlareaname })。追加($()。瓦迩(1),Html(请选择)))


对于(var i = 0;i < data.length;i++){
$(选择{ ID = ddlareaname })。追加($()。瓦迩(数据{我}。areaname)。Html(数据{我}。areaname));
}
}
}

说明:省数据绑定在页面加载上。在提交页面,省值可以通过选择以价值。在城市地区的数据请求{idname 选择。