网站搭建 html 页面 ajax 请求 asp.net页面

网站搭建 方式一:

相关业务的html页面,每个页面发送ajax请求到一个aspx页面,由aspx页面来处理对应的逻辑。


这是json格式的,如果数据量少的话,用这个比较好,如果比较大,用来传输的话,dataType用xml

前台

<script type="text/javascript">
    $(function ()
    {	//获取会议信息
        $.ajax({
            type: "POST",
            url: "MainController.aspx?oper=getmeeting",
            dataType: "json",
            async: false,
            success: function (data)
            {
                if (data.Result == true)
                {
                    var content = "";
                    $.each(data.Collection, function (index, val)
                    {
                        content += "<p><span>" + val.日期+ "</span><a href='#' οnclick=ViewInfo(2,'" + val.ID + "')>" + val.标题 + "</a></p>";
                    })
                    $("#divmeeting").html(content); //填充数据
                }
            }
        })
    });
  


后台

   protected void Page_Load(object sender, EventArgs e)
        {
            //禁用页面缓存,防止数据变更后重新打开页面,内容没有改变。
            Response.Cache.SetCacheability(HttpCacheability.NoCache);
            Response.Cache.SetNoStore();

            string strJSON = string.Empty;//要返回的json数据
            try
            {
                if (Session["user"] == null)
                {
                    strJSON = WebHelper.ToJSON(false, "用户未登陆!");
                }
                else
                {
                    currentUser = (User_JYXT)Session["user"];//当前用户
                    if (Request.QueryString["oper"] != null)
                    {
                        string strOper = Request["oper"].ToString();
                        //根据操作不同调用不同方法
                        switch (strOper)
                        {
                            case "getmeeting"://获取会议列表
                                strJSON = Get会议列表();
                                break;
                            case "getuserinfo"://获取用户信息
                                strJSON = Get用户信息();
                                break;
                            default:
                                strJSON = WebHelper.ToJSON(false, "无效的请求!");
                                break;
                        }
                    }
                    else
                    {
                        strJSON = WebHelper.ToJSON(false, "非法请求!");
                    }
                }
            }
            catch (Exception ex)
            {
                strJSON = WebHelper.ToJSON(false, ex.Message);
            }

            Response.ContentType = "application/json";
            Response.Charset = "utf-8";
            Response.Write(strJSON);
            Response.End();
        }
	public string Get会议列表()
        {
            return	ToJSON(true, "", mBll.Get会议信息列表());
        }



json的各种重载方法

        /// <summary>
        /// 对数据序列化,返回JSON格式 
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public static string ToJSON(bool result)
        {
            JsonObj obj = new JsonObj();
            obj.Result = result;
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(obj);
        }

        /// <summary>
        /// 对数据序列化,返回JSON格式 
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public static string ToJSON(bool result, string msg)
        {
            JsonObj obj = new JsonObj();
            obj.Result = result;
            obj.Msg = msg;
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(obj);
        }

        /// <summary>
        /// 对数据序列化,返回JSON格式 
        /// </summary>
        /// <param name="obj"></param>
        /// <returns></returns>
        public static string ToJSON(bool result, string msg, DataTable dt)
        {
            JsonObj obj = new JsonObj();
            obj.Result = result;
            obj.Msg = msg;
            ArrayList arrayList = new ArrayList();
            foreach (DataRow dataRow in dt.Rows)
            {
                Dictionary<string, object> dictionary = new Dictionary<string, object>();  //实例化一个参数集合
                foreach (DataColumn dataColumn in dt.Columns)
                {
                    dictionary.Add(dataColumn.ColumnName, dataRow[dataColumn.ColumnName].ToStr());
                }
                arrayList.Add(dictionary); //ArrayList集合中添加键值
            }
            obj.Collection = arrayList;

            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(obj);
        }

        public static string ToJSON(bool result, string msg, object model)
        {
            JsonObj obj = new JsonObj();
            obj.Result = result;
            obj.Msg = msg;
            ArrayList arrayList = new ArrayList();
            arrayList.Add(model);
            obj.Collection = arrayList;
            JavaScriptSerializer serializer = new JavaScriptSerializer();
            return serializer.Serialize(obj);
        }

        #region Json 字符串 转换为 DataTable数据集合
        /// <summary>
        /// Json 字符串 转换为 DataTable数据集合
        /// </summary>
        /// <param name="json"></param>
        /// <returns></returns>
        public static DataTable ToDataTable(this string json)
        {
            DataTable dataTable = new DataTable();  //实例化
            DataTable result;
            try
            {
                JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
                javaScriptSerializer.MaxJsonLength = Int32.MaxValue; //取得最大数值
                ArrayList arrayList = javaScriptSerializer.Deserialize<ArrayList>(json);
                if (arrayList.Count > 0)
                {
                    foreach (Dictionary<string, object> dictionary in arrayList)
                    {
                        if (dictionary.Keys.Count<string>() == 0)
                        {
                            result = dataTable;
                            return result;
                        }
                        if (dataTable.Columns.Count == 0)
                        {
                            foreach (string current in dictionary.Keys)
                            {
                                dataTable.Columns.Add(current, dictionary[current].GetType());
                            }
                        }
                        DataRow dataRow = dataTable.NewRow();
                        foreach (string current in dictionary.Keys)
                        {
                            dataRow[current] = dictionary[current];
                        }

                        dataTable.Rows.Add(dataRow); //循环添加行到DataTable中
                    }
                }
            }
            catch
            {
            }
            result = dataTable;
            return result;
        }
        #endregion

        #region 转换为string字符串类型
        /// <summary>
        ///  转换为string字符串类型
        /// </summary>
        /// <param name="s">获取需要转换的值</param>
        /// <param name="format">需要格式化的位数</param>
        /// <returns>返回一个新的字符串</returns>
        private static string ToStr(this object s, string format = "")
        {
            string result = "";
            try
            {
                if (format == "")
                {
                    result = s.ToString();
                }
                else
                {
                    result = string.Format("{0:" + format + "}", s);
                }
            }
            catch
            {
            }
            return result;
        }
        #endregion      




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值