Javascript Gridview没有使用AJAX post方法进行填充?如何解决这个问题?
我的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: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加载对象发
当您设置数据类型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);
}