今天碰到了一个需要跨域获得省对应的城市,用jquery的getjson解决,记录如下
客户端
<script type="text/javascript" src="/js/jquery-1.4.4.min.js"></script>
<select name="Prov" id="Prov" class="selcss" onChange="javaScript:GetCity();" >
<option value=''></option>
<option value='aanhui'>安徽省</option>
</select>
<select name="City" id="City"class="selcss"></select>
<script language="javascript">
function GetCity(){
var ProvID=$("#Prov").val();
var url="http://www.xx.com/keywordajax.asp?jsoncallback=?";//很关键的就是jsoncallback=?的=?了,jsoncallback这个变量名随便,可以用abc
$.getJSON(url,{ProvID:ProvID},function(data){
//alert(data);
var myop="";
for (var i=0;i<data.length;i++){
myop+='<option value="'+data[i].optionValue+'">'+data[i].optionDisplay+'</option>';
}
$("#City").html(myop);
});
}
</script>
服务气端
keywordajax.asp
dim ResponseInfo
call GetCity()
response.write(ResponseInfo)
Sub GetCity()
ResponseInfo="{optionValue:'',optionDisplay:''}"
ProvID=request("ProvID")
jsoncallback=request("jsoncallback")'很重要
r="{optionValue:1'',optionDisplay:安庆''},{optionValue:2'',optionDisplay:合肥''}"
ResponseInfo=ResponseInfo &"," & r
ResponseInfo=jsoncallback & "([" & ResponseInfo & "])"
End Sub