Поле выбора jQuery с отключенными параметрами - PullRequest
0 голосов
/ 02 июля 2011

Я ищу поле выбора jQuery / JavaScript для моих HTML-форм. Особое требование в моем случае заключается в том, что я должен иметь возможность отключить определенные параметры в меню элемента управления. Я хотел бы знать, если кто-нибудь нашел плагин, который позволяет мне сделать это, желательно легко, используя что-то вроде

$("#selectControl").change(function()
{
    $(this).find(":selected").attr("disabled", "disabled");
});

Конечно, функция attr() не будет работать с сгенерированным элементом, но есть ли плагин jQuery, который имеет оболочку для этой функции?

EDIT

Чтобы прояснить ситуацию, я скажу по-другому: у меня есть HTML-структура, которая выглядит как красиво оформленное поле выбора, за которым скрыт фактический <select> элемент управления. Можно отключить <option> в <select>, но не в большинстве плагинов jQuery для стилизации блоков выбора. Я спрашиваю, есть ли плагин, который позволит мне отключить определенные опции в предварительно проверенном элементе <select>.

Спасибо

Джеймс

Ответы [ 2 ]

1 голос
/ 02 июля 2011

Я не уверен, что отслеживаю ваш вопрос, но фрагмент кода ниже работает с раскрывающимся списком, чтобы скрыть определенные параметры:

//show them all
$('#<%= ddlRank.ClientID %> span').each(
    function () {
        var opt = $(this).find("option").show();
         $(this).replaceWith(opt);
    }
);

//hide unrelated
var selectionLost = false;
$('#<%= ddlRank.ClientID %> option').each(
    function () {
        if ($.inArray($(this).val(), related) == -1) {
            if ($(this).attr("selected")) {
                $(this).removeAttr("selected");
                selectionLost = true;
            }
            $(this).wrap("<span>").hide();
        }
    }
);  

Секретный соус (чтобы скрыть их в сочетании с кодом «показать все»):

$(this).wrap("<span>").hide();
0 голосов
/ 02 июля 2011

Ну, оказывается, я выглядел недостаточно усердно.Для тех, кто хочет то же самое, что и я, я нашел этот плагин .Чтобы получить поведение «отключить при выборе», я использовал плагин связи jQuery, ссылка на который есть на странице в URL-адресе.Это немного здоровенный плагин selectbox, но минимизированный это должно быть хорошо.Ящик очень легко стилизован с помощью CSS и может быть полностью выполнен без изображений, используя трюк с шириной границы.Если я получу достаточно интереса, я напишу учебник о том, как стилизовать эти поля.

РЕДАКТИРОВАТЬ

Плагин, указанный выше, на самом деле не работал очень хорошотак что я просто написал свой.Я опубликую ссылку на него, если кто-нибудь захочет посмотреть.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...