0

我正在尝试使用另一个选择列表来过滤选择列表。问题是我无法在过滤后重新加载列表。因此,如果用户在第一个列表中不小心做出了错误的选择,则第二个列表中将不会留下任何选项。您可以在下面看到我的代码,谢谢。

        $('#selectCftDialog').change(function() {
            //alert('Handler for .select() called.');
            var tempCftID;
            tempCftID = $("#selectCftDialog").val();
            //alert("The tempCraftID is: CftID-" + tempCraftID)
            $('#selectSpDialog option').not('#CftID-' + tempCftID).remove();    
                    });
4

1 回答 1

2

您可以做的是将选项保存为data选择元素本身启动时。

$('#selectSpDialog').data('options', $('#selectSpDialog option')); // Set the jquery data `options` with the initial set of options.

$('#selectCftDialog').change(function () {
    //alert('Handler for .select() called.');
    var tempCftID;
    tempCftID = $("#selectCftDialog").val();
    //alert("The tempCraftID is: CftID-" + tempCraftID)
    $('#selectSpDialog option').not('#CftID-' + tempCftID).remove(); // Ok you can remove now
});

function someEventCalledProabablyReset()
{
    var select = $('#selectSpDialog');
    select.html(select.data('options')); //Set back all the saved options.
}

小提琴

于 2013-06-19T03:07:58.950 回答