如何在前臺腳本通過json傳遞數(shù)據(jù)到后臺(使用微軟自帶的ajax)
首先,我們要在前臺引入json的腳本,以便于把js對象序列化
<script type="text/javascript" src="/js/jquery.json-2.4.min.js"></script>
然后我們在前臺聲明一個類,將你要保存的值放到類里面,最后序列化
function Save() {
var examId = '<%=ExamId %>';
var yearTerm = $("#<%=DDLYearTerm.ClientID %>").val();
var examType = $("#<%=DDLExamType.ClientID %>").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);
}
}
然后我們在后臺,進(jìn)行反序列化,并使用值.因為我們使用ajax所以要在后臺的方法上加上[Ajax.AjaxMethod]特性,并且在你前臺所在頁面的cs里面也要加上Ajax的注冊.具體使用看
微軟 ajax 庫 的使用方法( ajax.ajaxMethod) http://www.dbjr.com.cn/article/40764.htm
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<EditExam>(value);
ExamController eController = new ExamController();
eController.EditExam(editExam);
Result = "Success";
}
else
{
Result = "會話無效,請重登錄!";
}
}
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; }
}
這樣就可以很好的避免在前臺js里面?zhèn)魅氪罅康膮?shù),后臺也可以直接反序列化為類來點(diǎn)出成員的值了
- 有趣的bootstrap走動進(jìn)度條
- BootStrap初學(xué)者對彈出框和進(jìn)度條的使用感覺
- Bootstrap進(jìn)度條組件知識詳解
- Bootstrap每天必學(xué)之進(jìn)度條
- php基于jquery的ajax技術(shù)傳遞json數(shù)據(jù)簡單實例
- jQuery學(xué)習(xí)筆記之 Ajax操作篇(二) - 數(shù)據(jù)傳遞
- JSP中獲取ExtJS.Ajax前臺傳遞的JSON數(shù)據(jù)實現(xiàn)過程
- JavaScript 封裝Ajax傳遞的數(shù)據(jù)代碼
- $.ajax json數(shù)據(jù)傳遞方法
- Bootstrap進(jìn)度條與AJAX后端數(shù)據(jù)傳遞結(jié)合使用實例詳解
相關(guān)文章
.Net Core3.0 配置Configuration的實現(xiàn)
這篇文章主要介紹了.Net Core3.0 配置Configuration的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10asp.net網(wǎng)站安全從小做起與防范小結(jié)
我是做asp.net網(wǎng)站開發(fā)的,QQ群里一個網(wǎng)友的站被掛馬了。他說讓我寫點(diǎn)安全方面的文章。我就介紹下我的經(jīng)驗吧,各位大牛不要拿磚頭砸我。。。2008-09-09ASP.NET堆和棧二之值類型和引用類型的參數(shù)傳遞和內(nèi)存分配
這篇文章介紹了ASP.NET堆和棧中值類型和引用類型的參數(shù)傳遞和內(nèi)存分配,文中通過示例代碼介紹的非常詳細(xì)。對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08asp.net利用cookie保存用戶密碼實現(xiàn)自動登錄的方法
這篇文章主要介紹了asp.net利用cookie保存用戶密碼實現(xiàn)自動登錄的方法,實例分析了asp.net針對cookie的創(chuàng)建、提取與銷毀操作技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-01-01判斷WebBrowser瀏覽器網(wǎng)頁加載完成的處理方法
.net 中通過 SqlConnection 連接 sql server,我們會發(fā)現(xiàn)第一次連接時總是很耗時,但后面連接就很快,這個其實和SqlConnection 的連接池機(jī)制有關(guān),正確的理解這個連接池機(jī)制,有助于我們編寫高效的數(shù)據(jù)庫應(yīng)用程序。2013-04-04