i';我试图使用javascript ajax函数绑定数据库中的数据,但没有;不起作用
本文关键字:数据 数据库 不起作用 绑定 ajax javascript 函数 | 更新日期: 2023-09-27 18:30:11
此页面是从另一个页面重定向的结果,并且在url 中具有公司id
<script type="text/javascript">
var url = window.location.search.substring(1);
var CID = url.split("=")[1];//here i take the company id from the link
$.ajax({
type: "POST",
url: "CompanyPage.aspx/ajaxBindData",
contentType: "application/json;charset=utf-8",
data: '{CID: ' + JSON.stringify(CID) + '}',
dataType: "json",
success: function (data) {
alert(data.d);
$("#GridView1").data = append(data.d);
alert("done appending");
$("#GridView1").bind;
alert("done binding");
},
error: function (exception) {
alert(exception.responseText );
}
});
</script>
服务器端代码://服务器端在app_code文件夹中有一个类,用于执行中的每个功能
public static string ajaxBindData(int CID)
{
/*
SqlDataReader rd = EditingEmployee.FillEmps(CompanyID);
GridView1.DataSource = rd;
GridView1.DataBind();
rd.Close();
*/
DataTable dt = EditingEmployee.GetEmps(CID);
List<Dictionary<string, object>> rows = new List<Dictionary<string, object>>();
Dictionary<string, object> row = null;
foreach (DataRow dr in dt.Rows)
{
row = new Dictionary<string, object>();
foreach (DataColumn col in dt.Columns)
{
row.Add(col.ColumnName, dr[col]);
}
rows.Add(row);
}
string json = JsonConvert.SerializeObject(rows);
return json;
}
编辑员工://这是我的项目和数据库之间的关系
internal static DataTable GetEmps(int CompId)
{
DataTable dt = new DataTable();
try
{
SqlConnection conn = new SqlConnection(connectionString);
SqlDataAdapter sda = new SqlDataAdapter();
conn.Open();
SqlCommand cmd = new SqlCommand("Select Emp_ID,Emp_Name,Company_ID,Emp_Address,Poste_Name, Salary FROM Employee inner join Postes on Postes.PosteID = Employee.Poste_ID Where Company_ID = " + CompId, conn);
sda.SelectCommand = cmd;
sda.Fill(dt);
return dt;
}
catch (SqlException ex)
{
return null;
}
}
请参阅此链接了解解决方案它是一个gridview模板字段绑定方法http://www.aspforums.net/Threads/122325/Bind-data-to-GridView-with-TemplateField-TextBox-with-jQuery-or-JSON-in-ASPNet/