0
我試圖根據表中選定的行打開X數量的選項卡。當ajax調用返回時,它會觸發jQuery的foreach,但只會爲我選擇的3行打開一個選項卡,而不是每個選項的選項卡(3個選項卡)...任何想法爲什麼會發生這種情況?數組中的所有數據都是正確的,並且網址生成工作正常。這只是不打開數組中的每個項目的選項卡。
更新:這在IE 10中的作品,但不完全鉻..打開只有一個鉻。關於如何處理瀏覽器:(思考?
//FUNCTION
function viewContracts(selectedRows) {
$.ajax({
type: "POST",
url: "/Home/SetContracts",
data: { contracts: selectedRows.join() },
async: false,
success: function (data) {
if (data == null) {
alert('There was an error viewing the selected contracts.');
}
else {
openContracts(selectedRows);
}
},
error: function (xhr, ajaxOptions, thrownError) {
alert('There was an error viewing the selected contracts.');
alert(thrownError);
}
});
}
//FUNCTION
function openContracts(selectedRows) {
$(selectedRows).each(function (i, obj) {
window.open('@Url.Action("ContractDetails", "Contract")' + '?contract=' + obj, '_blank');
});
}
講述的是標籤中的數據,你'試圖打開包含在'selectedRows'或響應對象'data'中?另外,打開一個新標籤是瀏覽器特有的行爲,你可能不會能夠執行。 – wahwahwah 2014-11-20 19:22:48
我看不出'openContracts'有什麼問題。我能夠打開多個選項卡(彈出窗口,取決於瀏覽器的行爲)。你的'selectedRows'看起來像什麼? – stack247 2014-11-20 19:43:55
根據你的'if(data == null){!ERROR! }'語句,我假設'selectedRows()'函數需要'data'回調對象('data.selectedRows'或許?) – wahwahwah 2014-11-20 19:56:17