0

我对级联下拉列表有一个看法(准确地说是 3 个)

在选择前一个选项并触发 jquery 之前,第二个和第三个被禁用。

所有这些在新鲜的状态下都非常有效。当我有要传递给它的预设值时,我想使用相同的视图。在某种程度上,我已经实现了这一点,因为我可以正确设置下拉菜单上的值,但是第二和第三下拉菜单被禁用(因为这是初始状态),因此不要在发布时传递表单字段值。

有没有人成功实现过这种场景?为了使下拉状态启用,我缺少什么?

我需要一种从列表中删除禁用选项的方法(就像在每个下拉列表中选择新选项时一样)

谢谢。

4

2 回答 2

1

试试这个:

$(function(){
  if($("#DroprDownListID1").val() != "-SELECT-")
  {
    $("#DroprDownListID2").removeAttr("disabled");
  }
});
于 2012-12-19T04:52:29.370 回答
1

我尝试了以下方法来根据条件启用和禁用级联下拉列表中的某些值。请检查它是否对您有帮助。

[脚本]

       function SetdropDownData(sender, args) {           
            $('#ShipCity').attr('disabled', 'disabled')
            $('#ShipCountry').live('change', function () {
                $.ajax({
                    type: 'POST',
                    url: 'Home/GetCities',
                    data: { Country: $('#ShipCountry').val() },
                    dataType: 'json',
                    success: function (data) {
                        $('#ShipCity option').remove();
                        $.each(data, function (index, val) {
                            if ($('#ShipCountry').val() == "Germany") {
                                $('#ShipCity').removeAttr('disabled')
                                var optionTag = $('<option></option>');
                                $(optionTag).val(val.Value).text(val.Text);
                                $('#ShipCity').append(optionTag);
                            }
                            else {
                                var optionTag = $('<option></option>');
                                $(optionTag).val(val.Value).text(val.Text);
                                $('#ShipCity').append(optionTag);
                            }
                        });
                    }
                });
            });

}
于 2012-12-19T05:04:04.270 回答