0
我有一個使用AJAX調用填充名爲filter items.php
的PHP文件的下拉框(使用jQuery Autocomplete小部件)。我希望能夠跟蹤用戶選擇的項目,以便如果他們轉到另一個頁面,他們的選擇會在他們返回時保留。Prop('selected',true)無法預選下拉列表項目
我試圖通過填充一個表格來暫時保存項目的ID,因爲他們做出選擇。當他們回到頁面時,它將對一個名爲'check basket.php'的PHP文件進行另一次AJAX調用,該文件將返回當前所選項目的列表。然後它會比較兩個列表中的項目,因爲它會生成下拉列表,當我添加一個匹配prop('selected', true)
但它似乎不工作?
下面的代碼:
//Check for items in Basket
$.ajax({
url: "check basket.php",
dataType: "json",
success: function(datas) {
var s = 0;
var cbox = [];
var itemid = [];
var quant = [];
$.each(datas, function(index, selected) {
while (selected.cbox[s]) {
cbox[s] = selected.cbox[s];
itemid[s] = selected.item_id[s];
quant[s] = selected.quant[s];
s++;
}
})
//BUILD LIST
$.ajax({
url: "filter items.php?type=0",
dataType: "json",
success: function(data) {
$.each(data, function(index, publisher) {
for (r = 1; r < 21; r++) {
j = 1;
while (publisher.item[j]) {
for (sc = 0; sc < cbox.length; sc++) //Compare items in basket to pre-select
{
if (r == cbox[sc] && publisher.item_id[j] == itemid[sc]) {
alert(publisher.item[j] + " is in Basket for cbox " + cbox[sc] + " and J is " + j);
$('#' + r + 'combobox').append($('<option>', {
value: publisher.item_id[j]
}).text(publisher.item[j]).prop('selected', true));
} else
$('#' + r + 'combobox').append($('<option>', {
value: publisher.item_id[j]
}).text(publisher.item[j]));
j++;
}
}
}
})
}
});
}
});