前台传json ajax,如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)
首先,我們要在前臺(tái)引入json的腳本,以便于把js對(duì)象序列化
然后我們?cè)谇芭_(tái)聲明一個(gè)類(lèi),將你要保存的值放到類(lèi)里面,最后序列化
function Save() {
var examId = '';
var yearTerm = $("#").val();
var examType = $("#").val();
var examDate = $("#ExamDate").val();
var examName = $("#ExamName").val();
var exam = {};
exam["ExamId"] = examId;
exam["YearTerm"] = yearTerm;
exam["ExamType"] = examType;
exam["ExamDate"] = examDate;
exam["ExamName"] = examName;
var json = $.toJSON(exam);
var Result = AjaxController.EditExam(json).value;
if (Result == "Success")
{
alert("保存成功");
parent.$.fancybox.close();
}
else
{
alert(Result);
}
}
然后我們?cè)诤笈_(tái),進(jìn)行反序列化,并使用值.因?yàn)槲覀兪褂胊jax所以要在后臺(tái)的方法上加上[Ajax.AjaxMethod]特性,并且在你前臺(tái)所在頁(yè)面的cs里面也要加上Ajax的注冊(cè).具體使用看
protected void Page_Load(object sender, EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(Youjiao.xxt.BLL.Controller.AjaxController));
if (!IsPostBack)
{
Databind();
}
}
[Ajax.AjaxMethod]
public string EditExam(string value)
{
string Result = "";
try
{
if (HttpContext.Current.Request.IsAuthenticated)
{
EditExam editExam = JsonSerializeHelper.DeserializeFromJson(value);
ExamController eController = new ExamController();
eController.EditExam(editExam);
Result = "Success";
}
else
{
Result = "會(huì)話無(wú)效,請(qǐng)重登錄!";
}
}
catch (Exception ex)
{
Result = ex.Message;
}
return Result;
}
圖片:
[Serializable]
public class EditExam
{
public string ExamId { get; set; }
public string YearTerm { get; set; }
public string ExamType { get; set; }
public string ExamDate { get; set; }
public string ExamName { get; set; }
}
這樣就可以很好的避免在前臺(tái)js里面?zhèn)魅氪罅康膮?shù),后臺(tái)也可以直接反序列化為類(lèi)來(lái)點(diǎn)出成員的值了
總結(jié)
以上是生活随笔為你收集整理的前台传json ajax,如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: iis占用服务器内存,W3wp.exe
- 下一篇: pe工具开机无法控制怎么弄 &q