C# ajax JQuery 将数据写入到数据库中

C# ajax JQuery 将数据写入到数据库中,第1张

//页面

                $.ajax({

                    type: "POST",

                    url: "路径/xxxx.ashx",

                    async: false,

                    data: {

                        //由于你需要传递很多数据后台,这里我才用了序列化表单的方式;你也可以自定义一个js类,然后把数据填充,然后转换成json格式的字符串,传递到后台。

                        data: $("form").serialize() 

                    },

                    complete: function (XHR, status) {

                        XHR = null

                    },

                    success: function (data) {

                        data = $.parseJSON(data)

                        if (data.success == true) {

                            alert("成功")

                        }

                        else{

                            alert("失败")

                        }

                    },

                    error: function (XHR) {

                        alert(XHR)

                    }

                })

然后你需要创建一个“一般处理程序”,里面的代码大致如下:

    public void ProcessRequest(HttpContext context)

    {

        context.Response.ContentType = "text/plain"

        //result中就是传递过来的所有数据

        string result = context.Request.Form

        //数据库 *** 作

        context.Response.Write("{success:true}")

    }

大致就是如此了。一个ajax请求并没有多么复杂。

var ajaxurl = path + "\/json/a.json"

url:ajaxurl,

他这里是把json格式的数据保存在一个页面了,实际应用中你不需要这种的,就是传个url+参数,去后台读取数据库,然后返回一个数组,前台显示。 不要照搬别人的方法,$.post

$.ajax这里的方法你百度一下,看看使用方法就能看懂

1.获取DataSet

2.转成DataTable

3.

public static string DataTableToJson(DataTable dt)

{

StringBuilder jsonBuilder = new StringBuilder()

//jsonBuilder.Append("'

//jsonBuilder.Append(dt.TableName)

jsonBuilder.Append("[")

for (int i = 0i <dt.Rows.Counti++)

{

jsonBuilder.Append("{")

for (int j = 0j <dt.Columns.Countj++)

{

jsonBuilder.Append("\"")

jsonBuilder.Append(dt.Columns[j].ColumnName)

jsonBuilder.Append("\":\"")

jsonBuilder.Append(dt.Rows[i][j].ToString())

jsonBuilder.Append("\",")

}

jsonBuilder.Remove(jsonBuilder.Length - 1, 1)

jsonBuilder.Append("},")

}

jsonBuilder.Remove(jsonBuilder.Length - 1, 1)

jsonBuilder.Append("]")

//jsonBuilder.Append("}") //输出的要求不要'}'

return jsonBuilder.ToString()

}

4.把Json字串Response出来

5.获取Json字串

function load() //页面加载

{

$.ajax({

type:"post",

url:"../Handler/LinkManHandler.ashx",//从哪获取Json

data:"action=getLinkMan&id="+comId,//Ajax传递的参数

beforeSend:function(){

//获取之前显示 loading 或 正在加载

},

success:function(mess)

{

$("#divImage").hide()

if(mess!="]")// 如果获取的数据不为空

{

var type=eval(mess)

var str="<a>首页</a>"

for(var i=0i<type.lengthi++)

{

// *** 作type 获取东西

str+="<a>"+type[i].数据库字段名+"</a>

}

$("#divLinkMan").html(str)//把str嵌入div divLinkMan 中

}

else

{

var notfind="<h2>未找到数据<a href='../Main.htm' target='_parent'>返回</a></h2>"

$("#divLinkMan").html(notfind)

}

},

complete:function()

{

//所有的都执行完后的方法

}

})

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6634992.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存