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

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

热门标签:百度AI接口 电销业务 国美全国运营中心 人工智能 网站排名优化 电商新玩法 客户服务 科大讯飞语音识别系统

首先,我们要在前台引入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);
            }
        }

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

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

您可能感兴趣的文章:
  • 有趣的bootstrap走动进度条
  • BootStrap初学者对弹出框和进度条的使用感觉
  • Bootstrap进度条组件知识详解
  • Bootstrap每天必学之进度条
  • php基于jquery的ajax技术传递json数据简单实例
  • jQuery学习笔记之 Ajax操作篇(二) - 数据传递
  • JSP中获取ExtJS.Ajax前台传递的JSON数据实现过程
  • JavaScript 封装Ajax传递的数据代码
  • $.ajax json数据传递方法
  • Bootstrap进度条与AJAX后端数据传递结合使用实例详解

标签:益阳 咸宁 枣庄 南平 厦门 拉萨 攀枝花 POS机

巨人网络通讯声明:本文标题《如何在前台脚本通过json传递数据到后台(使用微软自带的ajax)》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266