Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Gridview没有使用AJAX post方法进行填充?如何解决这个问题?_Javascript_C#_Asp.net_Ajax - Fatal编程技术网

Javascript Gridview没有使用AJAX post方法进行填充?如何解决这个问题?

Javascript Gridview没有使用AJAX post方法进行填充?如何解决这个问题?,javascript,c#,asp.net,ajax,Javascript,C#,Asp.net,Ajax,我的sql数据库中有一个表。我正在使用gridview在网页中显示它。问题是什么都没有显示出来。我使用了AJAX post方法从数据库中获取数据,但网格仍然是空的。我想使用AJAX post方法在gridview中通过单击按钮显示数据 我的sql数据库中有一个表。我正在使用gridview在网页中显示它。问题是没有显示任何内容。我使用了AJAX post方法从数据库中获取数据,但网格仍然是空的。我想使用AJAX post方法在gridview中通过单击按钮显示数据 受保护的无效页\u加载对象发

我的sql数据库中有一个表。我正在使用gridview在网页中显示它。问题是什么都没有显示出来。我使用了AJAX post方法从数据库中获取数据,但网格仍然是空的。我想使用AJAX post方法在gridview中通过单击按钮显示数据

我的sql数据库中有一个表。我正在使用gridview在网页中显示它。问题是没有显示任何内容。我使用了AJAX post方法从数据库中获取数据,但网格仍然是空的。我想使用AJAX post方法在gridview中通过单击按钮显示数据

受保护的无效页\u加载对象发送方,事件参数e { 如果!我回来了 { 宾杜姆罗; } } 私有无效BindDummyRow { DataTable dummy=新的DataTable; dummy.Columns.AddCarServiceId; dummy.Columns.AddCarServiceName; dummy.Columns.AddCityId; dummy.Columns.AddAddress; dummy.Columns.AddContact1; dummy.Columns.AddContact2; dummy.Columns.AddCarType; dummy.Columns.AddNoOfCar; dummy.Columns.AddMinimumPrice; dummy.Columns.AddMaximumPrice; dummy.Rows.Add; carServiceGridView.DataSource=dummy; carServiceGridView.DataBind; } [网络方法] 公共静态字符串GetCarService { DataTable carDT=CarService.GetCarService;//从汽车服务表获取数据,从CarService选择* 数据集ds=新数据集; ds.Tables.AddcarDT; 返回ds.GetXml; } Javascript: 功能网格显示{ GetCarService; } 功能GetCustomers{ //调试器; $.ajax{ 类型:POST,, url:Default.aspx/GetCarService, 数据:“{}”, contentType:application/json;字符集=utf-8, 数据类型:json, 成功:一旦成功, 故障:功能响应{ 警报响应.d; }, 错误:函数响应{ 警报响应.d; } }; } 函数OnSuccessresponse{ //调试器; var xmlDoc=$.parseXMLresponse.d; var xml=$xmlDoc; var customers=xml.findCarService; var row=$[id*=carServiceGridView]tr:last-child.clonetrue; $[id*=carServiceGridView]tr.not$[id*=carServiceGridView]tr:first-child.remove; $.eachcustomers,函数{ //调试器; var customer=$this; $td,row.eq0.html$this.findCarServiceID.text; $td,row.eq1.html$this.findCarServiceName.text; $td,row.eq0.html$this.findAddress.text; $td,row.eq1.html$this.findContact1.text; $td,row.eq2.html$this.findContact2.text; $td,row.eq0.html$this.findminimmprice.text; $td,row.eq1.html$this.findMaximumPrice.text; $td,row.eq2.html$this.findNoOfCar.text; $td,row.eq2.html$this.findCarType.text; $[id*=carServiceGridView].appendrow; row=$[id*=carServiceGridView]tr:last-child.clonetrue; }; }; .aspx:
当您设置数据类型json时,您需要以json格式的数据进行响应。 首先创建一个类:

 public class Cars
    {
        public string CarServiceId;
        public string CarServiceName;
        public string Contact1;
        ........
    }
您的webmethod如下所示,它返回一个car类的列表

   [WebMethod]
    public List<Cars> getListOfCars(List<string> aData)
    {
        SqlDataReader dr;
        List<Cars> carList = new List<Cars>();
     
        using (SqlConnection con = new SqlConnection(conn))
        {
            using (SqlCommand cmd = new SqlCommand())
            {
                cmd.CommandText = "YourStoredProcedureName";
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Connection = con;
                con.Open();
                dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                if (dr.HasRows)
                {
                    while (dr.Read())
                    {
                        string CarServiceId= dr["CarServiceId"].ToString();
                        string CarServiceName= dr["CarServiceName"].ToString();
                        string Contact1= dr["Contact1"].ToString();
     
                        carList.Add(new Cars
                              {
                                CarServiceId= CarServiceId,
                                 CarServiceName= CarServiceName,
                                 Contact1= Contact1
                            });
                    }
                }
            }
        }
        return carList;
    }
使用$。可以循环并获取/设置gridview控件,基本上是将gridview控件转换为HTML表。所以您可以向它添加tr,如下面的代码所示

 function OnSuccess(response) {
    var aData = response.d
    var fragmentation = "";
    $(aData).each(function (indx,val) {
        console.log(val.CarServiceId);
        fragmentation += "<tr><td>" + val.CarServiceId + "</td><td>" + val.CarServiceName + "</td><td>" + val.Contact1 + "</td></tr>"
    });
    $(".myGrdivewClassName").append(fragmentation);
}

在警报中得到了什么?在成功或错误部分?尝试错误:函数xhr,ajaxOptions,thrownError{alertxhr.statusText;}并查看错误是什么。您还可以看到xhr.responseText在xhr.responseText中得到了什么?现在没有错误。。。只有空白的gridview
 function OnSuccess(response) {
    var aData = response.d
    var fragmentation = "";
    $(aData).each(function (indx,val) {
        console.log(val.CarServiceId);
        fragmentation += "<tr><td>" + val.CarServiceId + "</td><td>" + val.CarServiceName + "</td><td>" + val.Contact1 + "</td></tr>"
    });
    $(".myGrdivewClassName").append(fragmentation);
}