Сброс раскрывающихся списков с использованием JavaScript

У меня есть следующий сценарий - несколько выпадающих списков и текстовое поле.

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

Javascript:

function ResetDropDowns() 
{
    var ddlSuppliers = document.getElementById('<%=ddlSuppliers.ClientID%>');
    var ddlResponse = document.getElementById('<%=ddlResponse.ClientID%>');
    var ddlImportStatus = document.getElementById('<%=ddlImportStatus.ClientID%>');

    ddlSuppliers.selectedIndex = -1;
    ddlResponse.selectedIndex = -1;
    ddlImportStatus.selectedIndex = -1;  
}

Код позади:

tbxAutoCompleteSupplier.Attributes.Add("onFocus", "return ResetDropDowns();");  

protected void ddlSuppliers_DataBound(object sender, EventArgs e)
{
    ddlSuppliers.Items.Insert(0, 
    new ListItem("--Please Select Supplier--", "0"));
}

Тем не менее, это не похоже на бизнес.

Есть идеи?

2 ответа

Решение

Почему вы меняете индекс на -1 в то время как ваш элемент по умолчанию находится в индексе 0?

ddlSuppliers.selectedIndex = 0;
ddlResponse.selectedIndex = 0;
ddlImportStatus.selectedIndex = 0; 

Должен сделать свое дело.

Обновить

Можете ли вы проверить, установлены ли выпадающие списки? Для отладки метода ResetDropDowns() просто введите ключевое слово debugger в начале. Это сломает компилятор, так что вы можете пройтись по коду.

Пример:

function ResetDropDowns() 
{
    debugger; //compiler will break here
    var ddlSuppliers = document.getElementById('<%=ddlSuppliers.ClientID%>');
}

Это на самом деле из-за конфликта между этим javascript и jquery нашей CMS - все отсортировано сейчас!

Разрешение:

Я обернул элементы управления в элемент div (называемый оберткой), а затем применил.uniform к элементам управления в указанном элементе div.

function pageLoad(sender, args) {
        if (args.get_isPartialLoad()) {
            $("#wrapper select, #wrapper span, #wrapper input").uniform();
        }
    }

Это гарантирует, что CSS поддерживается.

Спасибо за предложения, хотя.

Другие вопросы по тегам