jQuery的ajax应用

项目中的应用,先看来自jQuery API1.3的介绍。

通过 HTTP 请求加载远程数据。

jQuery 底层 AJAX 实现。简单易用的高层实现见 $.get, $.post 等。$.ajax() 返回其创建的 XMLHttpRequest 对象。大多数情况下你无需直接操作该对象,但特殊情况下可用于手动终止请求。

$.ajax() 只有一个参数:参数 key/value 对象,包含各配置及回调函数信息。详细参数选项见下。

注意: 如果你指定了 dataType 选项,请确保服务器返回正确的 MIME 信息,(如 xml 返回 "text/xml")。错误的 MIME 类型可能导致不可预知的错误。见 Specifying the Data Type for AJAX Requests 。

注意:如果dataType设置为"script",那么在远程请求时(不在同一个域下),所有POST请求都将转为GET请求。(因为将使用DOM的script标签来加载)

jQuery 1.2 中,您可以跨域加载 JSON 数据,使用时需将数据类型设置为 JSONP。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。数据类型设置为 "jsonp" 时,jQuery 将自动调用回调函数。

我的应用,主要是在load一个jsp页面时,即时加载下拉框select的内容。

对应的jsp页面:

<select id='state' style="width: 154px" name="m.state"></select>


jsp对应的js页面代码:


$(document).ready(function () {
loadStateForQuery();
});

function loadStateForQuery() {
$.ajax({
url: contextPath + '/icmgr/icInfoItem/loadState.action',//请求的URL
data: {dictTypeId:'PC_STATE'},//传递给action的参数
async: false,
dataType: 'json',
success: function(records) {
$.each(records, function(index, value) {
var opt = $('<option></option>').attr('value', value.dictId).text('[' + value.dictId + ']' + value.dictName);
opt.appendTo($('#state'));
});
}
});
$('#state').append($('<option value=""></option>').attr('selected', 'selected'));
}


请求的action部分:

/**
* ajax 调用
* @return
*/
public String loadState() {
List<JfDictBean> list = icInfoItemService.findDictByDictTypeId(dictTypeId);
JSONArray json = JSONArray.fromObject(list);
writePlainText(json.toString());
return NONE;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值