风大我抱树 2015-06-15 11:32 采纳率: 0%
浏览 2434

JQUERY ajax提交数据到后台,进行数据库查询,然后重新绑定GridView.

我在前台放了一个input,type=button,点击后触发下面的ajax提交数据到后台。后台处理后对一个GridView进行数据绑定。
前台代码如下:

 params = JSON.stringify(obj);
            $.ajax({
                type: "Post",
                url: "/aspx_consumption/Consumption_Home.aspx/AdvanceSearch",
                data: params,
                contentType: "application/json; charset=utf-8",
                dataType: "json",
                success: function (data) {
                    alert(date);
                },
                error: function (err) {
                    alert(err);
                }
            });

后台也没问题:

  [WebMethod]
        public static DataSet AdvanceSearch(string Factory_Style_No, string Customer_Style_No, string Style_Type, string Writer, string Start, string End, string pageSize, string pageIndex)
        {
            DataSet ds = new DataSet();
            string connStr = @System.Configuration.ConfigurationManager.ConnectionStrings["Sample_Room_ProgressConnectionString"].ToString();
            SqlConnection conn = new SqlConnection(connStr);
            SqlCommand cmd = conn.CreateCommand();
            cmd.CommandType = CommandType.Text;
            //cmd.CommandText = "SELECT Consumption_ID,Consumption_Factory_Style_No,Customer_Style_No,Quantity,Writer,Sample_Type,Write_Date,Confirmation,Approval FROM [Sample_Room_Progress].[dbo].[Consumption] where Factory_Style_No like '%'+@Factory_Style_No+'%' AND Customer_Style_No like '%'+@Customer_Style_No+'%' AND Sample_Type like '%'+@Sample_Type+'%' AND Writer like '%'+@Writer+'%' BETWEEN Write_Date >=@Start AND Write_Date<=@End order by Write_Date DESC";
            cmd.CommandText = "SELECT Consumption_ID,Consumption_Factory_Style_No,Customer_Style_No,Quantity,Writer,Sample_Type,Write_Date,Confirmation,Approval FROM [Sample_Room_Progress].[dbo].[Consumption] where Factory_Style_No like '%'+@Factory_Style_No+'%' AND Customer_Style_No like '%'+@Customer_Style_No+'%' AND Sample_Type like '%'+@Sample_Type+'%' AND Writer like '%'+@Writer+'%' AND Write_Date between @Start and @End  order by Write_Date DESC";
            cmd.Parameters.Add("@Factory_Style_No", SqlDbType.NVarChar);
            cmd.Parameters["@Factory_Style_No"].Value = Factory_Style_No;
            cmd.Parameters.Add("@Customer_Style_No", SqlDbType.NVarChar);
            cmd.Parameters["@Customer_Style_No"].Value = Customer_Style_No;
            cmd.Parameters.Add("@Sample_Type", SqlDbType.NVarChar);
            cmd.Parameters["@Sample_Type"].Value = Style_Type;
            cmd.Parameters.Add("@Writer", SqlDbType.NVarChar);
            cmd.Parameters["@Writer"].Value =Writer;
            cmd.Parameters.Add("@Start", SqlDbType.DateTime);
            if (Start == "")
            {
                cmd.Parameters["@Start"].Value = DBNull.Value;
            }
            else
            {
                cmd.Parameters["@Start"].Value = Start;
            }

            cmd.Parameters.Add("@End", SqlDbType.DateTime);
            if (End == "")
            {
                cmd.Parameters["@End"].Value = DBNull.Value;
            }
            else
            {
                cmd.Parameters["@End"].Value = End;
            }           
            SqlDataAdapter ad = new SqlDataAdapter();
            ad.SelectCommand = cmd;
            int indexNum = Convert.ToInt32(pageIndex);
            int SizeNum = Convert.ToInt32(pageSize);
            ad.Fill(ds, indexNum, SizeNum, "Consumption");
            return ds;
        }

但是用Jquery ajax提交数据,后台必需要静态方法似乎没法操作ASP.NET控件。有什么办法可以解决?难道我只能用asp.net控件吗?

  • 写回答

4条回答

  • bdmh 移动开发领域优质创作者 2015-06-15 13:09
    关注

    其实前后台是可以互调的,你可以通过调用后台方法去控制,另外现在有很多第三方的js表格组件,用起来比asp.net的表格组件好用多了

    评论

报告相同问题?

悬赏问题

  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用
  • ¥15 Web.config连不上数据库
  • ¥15 我想付费需要AKM公司DSP开发资料及相关开发。
  • ¥15 怎么配置广告联盟瀑布流
  • ¥15 Rstudio 保存代码闪退
  • ¥20 win系统的PYQT程序生成的数据如何放入云服务器阿里云window版?