将整数数组发送到 AJAX 中的选择器值
Sending an array of integers to a selectpicker value from AJAX
在弹出模型时,我需要一个选择器下拉列表来预先填充值。我已经通过手动输入一些 ID 来测试此方法是否有效,如下所示:
$("#listPhones").selectpicker('val', [1,5]);
$("#listPhones").selectpicker("refresh");
我的 [WebMethod] 函数在代码后面 returns 一个像这样的字符串:
1,5
我使用 data.d 插入它,所以最终输出是:
$.ajax({
type: "POST",
url: "/default.aspx/GetRespIds",
data: JSON.stringify({ Responders: editPhonetbxValue }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
//alert(data.d);
$("#listPhones").selectpicker('val', [data.d]);
$("#listPhones").selectpicker("refresh");
}
});
手动输入 1,5 值可以正常工作并按预期选择下拉列表中的项目,但是通过 AJAX data.d 变量解析它却不行 - 谁能指出我正确的方向?
如果您使用 return 一个字符串并且您想要一个数组,您必须使用 split。您还必须将其解析为 int。试一试:
$("#listPhones").selectpicker('val', data.d.split(',').map(Number));
在弹出模型时,我需要一个选择器下拉列表来预先填充值。我已经通过手动输入一些 ID 来测试此方法是否有效,如下所示:
$("#listPhones").selectpicker('val', [1,5]);
$("#listPhones").selectpicker("refresh");
我的 [WebMethod] 函数在代码后面 returns 一个像这样的字符串:
1,5
我使用 data.d 插入它,所以最终输出是:
$.ajax({
type: "POST",
url: "/default.aspx/GetRespIds",
data: JSON.stringify({ Responders: editPhonetbxValue }),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
//alert(data.d);
$("#listPhones").selectpicker('val', [data.d]);
$("#listPhones").selectpicker("refresh");
}
});
手动输入 1,5 值可以正常工作并按预期选择下拉列表中的项目,但是通过 AJAX data.d 变量解析它却不行 - 谁能指出我正确的方向?
如果您使用 return 一个字符串并且您想要一个数组,您必须使用 split。您还必须将其解析为 int。试一试:
$("#listPhones").selectpicker('val', data.d.split(',').map(Number));