aspx .net ajax应用范例

本文介绍了一个使用C#后端与Ajax前端交互来更新数据库中特定记录的方法。前端通过Ajax发送POST请求,将要更新的数据序列化为JSON格式,并将其传递给后端的WebMethod方法。后端接收到请求后执行SQL更新语句,并将操作结果以JSON格式返回给前端。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

涉及知识点:Webmethod,ajax,有关c#的转json,.net需要用到的namespace

前端:.aspx文件

<script src="http://ksmesweb.aseks.com/js/jquery.min.js"></script>
<script type="text/javascript">
function updateForm(e){
    var rptid=$("#"+e).children("td").eq(0).text();
    var remark2=$("#"+e+"_2").val();
    var cJSON={'rptid':rptid,'remark2':remark2};

   $.ajax({  
        type: 'post',  
        url: 'showRPT_ID.aspx/updateRemark2',//模拟web服务,提交到方法
        data:JSON.stringify(cJSON),//转json
        contentType: "application/json", //注意:WebMethod()必须加这项,否则客户端数据不会传到服务端
        dataType: "json",
        success: function (data) {
                     //alert("success: " + data.d);//注意这里:必须通过data.d才能获取到服务器返回的值
                     // 服务端可以直接返回Model,也可以返回序列化之后的字符串,如果需要反序列化:string json = JSON.parse(data.d);
            alert("修改成功!");
            $("#btnload").click();
        }, error: function (data) {  
            alert("失败!");
        }
    }); 
};
</script> 

后台.cs文件
using System.Web.Services;//ajax 
using System.Web.Script.Serialization;//转Json
using System.Collections;//HashTable
using System.Collections.Generic;
[WebMethod]//必须有
public static String updateRemark2(string rptid,string remark2)//update
{
	string sqlRPT="UPDATE TableName SET REMARK2 = '"+remark2+"' where REPORTID = '"+rptid+"'";
	try{
	    conn.Open();
	    DataTable dt = DBLink.sqlquery(sqlRPT, conn);
	}catch(Exception e){
	    return "error";
	}finally{
	    sqlRPT="";
	    conn.Close();
	}		
	Hashtable rpt =new Hashtable();//利用hashtable转json,c#没有hashmap
	rpt.Add("rptid",rptid);
	rpt.Add("remark2",remark2);
	JavaScriptSerializer ser = new JavaScriptSerializer();//转json,或者导入Newtonsoft.Json  
        String jsonStr=ser.Serialize(rpt); 
	return jsonStr;
}
webMethod 链接: 点击打开链接http://slashlook.com/articles_20170308.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值