wenzhao168

导航

ajax 异步更新

一:  下拉控件的  onchange事件调用selectChange()函数  
<select id="select" onchange="selectChange()">
                                <option value="">=Status=</option>
                                <option value="No">No</option>
                                <option value="Start">Start</option>
                                <option value="Closed">Closed</option>
                            </select>
二: selectChange()函数
主要的几个地方
1:处理数据的方法 url:"页面名称/方法名称"
2:传值 date:"{'A':'a','B':'b'}" 变量对应值用:号,多个值用,分开
3:成功后事件的响应方式 success:对应的函数
4:错误,若代码没错误,其它的就是路径的问题,这个最常见。引用到绝对路径一般能解决问题。
三: 引入jquery包,呵呵,这个开始就该引用的。
四: 处理数据的方法,页面可以使aspx,ashx,asmx,,,这里是aspx页面的后台添加个处理方法
如:【webmethod】,是必须加的,否则没效果
[WebMethod]
    public static string Change(string status,string id)
    {
        if (MessageManager.UpdateStatus(status, Convert.ToInt32(id)))
        {
            return "更新成功!";
        }
        else
        {
            return "更新失败!";
        }
    }

1
<script type="text/javascript" language="javascript"> 2 var selectvalue; 3 function selectChange() { 4 selectvalue = document.getElementById("select").value; 5 $.ajax({ 6 type: "post", //也可以用get, 不安全 7 contentType: "application/json", 8 cache: false, 9 url: "selectchange.aspx/Change", //你读取数据库的服务器脚本 10 // data: "id1=1&id2=1", //需要传递的数据 11 data: "{'id':'"+<%=messageId %>+"','status':'"+selectvalue+"'}", 12 dataType: 'json', 13 timeout: 20000, 14 beforeSend: function () { 15 alert("正在处理请求,请稍候..."); //加载前的操作 16 }, 17 success: function (msg) { //数据传回时的操作, 变量msg为服务器脚本传回的数据 18 // $('#content').html(msg.d); 19 alert(msg.d); 20 }, 21 error: function () { 22 alert("服务器没有返回数据,可能服务器忙,请重试"); 23 } 24 }); 25 }

posted on 2012-09-05 17:52  wenzhao168  阅读(546)  评论(0编辑  收藏  举报