最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)

来源:动视网 责编:小采 时间:2020-11-27 22:40:36
文档

如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)

如何在前台脚本通过json传递数据到后台(使用微软自带的ajax):首先,我们要在前台引入json的脚本,以便于把js对象序列化 <script type=text/javascript src=/js/jquery.json-2.4.min.js></script> 然后我们在前台声明一个类,将你要保存的值放到类里面,最后序列化 代码如下:function Sa
推荐度:
导读如何在前台脚本通过json传递数据到后台(使用微软自带的ajax):首先,我们要在前台引入json的脚本,以便于把js对象序列化 <script type=text/javascript src=/js/jquery.json-2.4.min.js></script> 然后我们在前台声明一个类,将你要保存的值放到类里面,最后序列化 代码如下:function Sa


首先,我们要在前台引入json的脚本,以便于把js对象序列化

<script type="text/javascript" src="https://www.gxlcms.com/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);
            }
        }

然后我们在后台,进行反序列化,并使用值.因为我们使用ajax所以要在后台的方法上加上[Ajax.AjaxMethod]特性,并且在你前台所在页面的cs里面也要加上Ajax的注册.具体使用看

微软 ajax 库 的使用方法( ajax.ajaxMethod) //www.gxlcms.com/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里面传入大量的参数,后台也可以直接反序列化为类来点出成员的值了

文档

如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)

如何在前台脚本通过json传递数据到后台(使用微软自带的ajax):首先,我们要在前台引入json的脚本,以便于把js对象序列化 <script type=text/javascript src=/js/jquery.json-2.4.min.js></script> 然后我们在前台声明一个类,将你要保存的值放到类里面,最后序列化 代码如下:function Sa
推荐度:
标签: 后台 后台的 ajax
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top