Javascript 如何在WebForms中为SelectList格式化AJAX数据?
我正在填充一个SelectList,其中包含AJAX调用返回的数据。但是,数据显示为一个项目(包含很长的名称),而不是几十个项目(包含很短的名称)。我得到的是“ABC DEF GHI JKL MNO”,而不是“ABC”、“DEF”、“GHI”等。因此,我的选择列表只附带了一个长名称的项目 如果我在调试器中查看返回的数据,我可以根据需要在单独的行中看到短值 我尝试使用“html”而不是“json”作为返回类型,但没有效果 以下是我的服务器端代码:Javascript 如何在WebForms中为SelectList格式化AJAX数据?,javascript,ajax,webforms,selectlist,Javascript,Ajax,Webforms,Selectlist,我正在填充一个SelectList,其中包含AJAX调用返回的数据。但是,数据显示为一个项目(包含很长的名称),而不是几十个项目(包含很短的名称)。我得到的是“ABC DEF GHI JKL MNO”,而不是“ABC”、“DEF”、“GHI”等。因此,我的选择列表只附带了一个长名称的项目 如果我在调试器中查看返回的数据,我可以根据需要在单独的行中看到短值 我尝试使用“html”而不是“json”作为返回类型,但没有效果 以下是我的服务器端代码: private void GetItems(Htt
private void GetItems(HttpContext context, int myID)
{
DataTable datatable = GetMyItems(myID);
foreach (DataRow myRow in datatable.Rows)
{
Response.Write(myRow["ColumnName"].ToString() + Environment.NewLine);
}
Response.End();
}
还有javascript
$.ajax({
url: "../myAjaxPage.aspx?myID=" + myID,
type: 'POST',
datatype: 'json',
success: function (data) {
$("<option>").attr("value", data).text(data).appendTo("#<%= mySelectList.ClientID %>");
}
});
$.ajax({
url:“../myAjaxPage.aspx?myID=“+myID,
键入:“POST”,
数据类型:“json”,
成功:功能(数据){
$(“”).attr(“值”,数据).text(数据).appendTo(“#”);
}
});
能否将对象作为数组而不是字符串返回?我认为在ajax中,新行被忽略了。您可以执行$。如果每个(数据)
都存储在一个数组对象中,这就是我认为您正在尝试执行的操作您可以将对象作为数组而不是字符串返回吗?我认为在ajax中,新行被忽略了。您可以执行$。如果每个(数据)
都存储在一个数组对象中,这就是我认为您正在尝试执行的操作您没有返回JSON,您只是返回一个字符串。但是,那很好。只需拆分字符串并迭代生成的数组
success: function (data) {
$.each (data.split("\n"), function () {
$("<option>").attr("value", this).text(this).appendTo("#<%= mySelectList.ClientID %>");
});
});
成功:函数(数据){
$.each(data.split(“\n”),函数(){
$(“”).attr(“value”,this).text(this).appendTo(“#”);
});
});
您没有返回JSON,您只是返回一个字符串。但是,那很好。只需拆分字符串并迭代生成的数组
success: function (data) {
$.each (data.split("\n"), function () {
$("<option>").attr("value", this).text(this).appendTo("#<%= mySelectList.ClientID %>");
});
});
成功:函数(数据){
$.each(data.split(“\n”),函数(){
$(“”).attr(“value”,this).text(this).appendTo(“#”);
});
});
您并不是真正从GetItems
返回JSON或HTML<代码>数据只是一个长字符串,有了这个长字符串,您只能创建一个值为该长字符串的字符串。HTML呈现然后将换行符转换为空格。您并不是真正从GetItems
返回JSON或HTML<代码>数据只是一个长字符串,有了这个长字符串,您只能创建一个值为该长字符串的字符串。然后,HTML呈现将换行符转换为空格。