我有一个问题。我需要用一个项目列表填充一个下拉列表。我目前正在做的方式是选择前500名,但我真的需要那里的所有项目,可能有1000或更多。下面是我试图在网站崩溃时发回的数据量的粘贴。
Jquery的:
$.ajax({
type: "POST",
url: "WebService.asmx/GetFinish1",
data: '{' +
'Item:"' + item + '"' +
'}',
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
//$("#item").val(msg);
var data = jQuery.parseJSON(msg);
if (!data.error) {
$.each(data, function (d) {
var areaText = $('#notes').val();
if (data[d].Dropdown == "Finish1") {
if (data[d].Value != "") {
$("<option>").attr("value", data[d].id).text(data[d].Value).appendTo($('#dropFinish1'));
}
}
if (data[d].Dropdown == "Finish2") {
if (data[d].Value != "") {
$("<option>").attr("value", data[d].id).text(data[d].Value).appendTo($('#dropFinish2'));
}
}
if (data[d].Dropdown == "Length") {
if (data[d].Value != "") {
$("<option>").attr("value", data[d].id).text(data[d].Value).appendTo($('#dropLength'));
}
}
if (data[d].Dropdown == "Unit") {
if (data[d].Value != "") {
$("<option>").attr("value", data[d].id).text(data[d].Value).appendTo($('#dropUnit'));
}
}
if (data[d].Dropdown == "Notes") {
if (data[d].Value != "") {
$('#notes')[0].value = areaText + data[d].Value;
}
}
});
答案 0 :(得分:1)
我认为没有人想要在下拉列表中挖掘1000多个项目,除非它是某种自动完成下拉,你可以输入提示。即便如此,听起来有太多的数据。我将专注于尝试通过让用户输入一些信息来将数据集分成几部分。如果您可以获得一些信息来使查询结果达到该大小的十分之一,那么您的状态就会很好。这就是我之前解决这个问题的方法。