Как удалить значения из раскрывающегося списка, чтобы их не было на странице отправки?

У меня есть текстовое поле и раскрывающийся список в веб-форме aspx. Пользователь вводил число, а затем отправлял его, и раскрывающийся список заполнялся значениями, относящимися к введенному слову. Если пользователь вводит новый термин в текстовое поле, я хочу обрезать раскрывающийся список, и когда пользователь отправляет, он будет отправлять только текст, а не раскрывающееся значение (на самом деле пустая строка в порядке). Когда пользователь перемещается по раскрывающемуся списку, страница обновляется данными, относящимися к тексту и значению раскрывающегося списка. Я использую следующий jQuery

function removeCoverageOptions() {
    $("#ctl00_DefaultContent_txtClaimNumber").keypress(
        function() {
            $("#ctl00_DefaultContent_ddCovCert").find("option").remove();
        }
    );
}

Я запускаю это на $(function(){ removeCoverageOptions(); });

Он удаляет элементы параметров в пользовательском интерфейсе, но когда я отправляю форму и отлаживаю... при загрузке страницы

var claimNum = txtClaimNumber.Text;
var certSeq = ddCovCert.SelectedValue;

ClaimNum — это правильный вновь введенный текст, но certSeq по-прежнему имеет «999», последнее выбранное значение. Любые идеи о том, как я могу это исправить. Когда я изменяю ClaimNum, я хочу, чтобы certSeq была пустой строкой. Может быть, это проблема состояния просмотра?

Спасибо, ~ck в Сан-Диего


person Hcabnettek    schedule 20.11.2009    source источник


Ответы (1)


Похоже на проблему с состоянием просмотра. Почему бы не установить для EnableViewState значение false, поскольку похоже, что оно вам ни для чего не нужно. Это гарантирует, что в DropDownList никогда не будет ничего в нем при отправке обратно на сервер.

person Kelsey    schedule 20.11.2009
comment
Элемент управления DropDownList требует, чтобы ViewState заполнил свойство SelectedValue. - person Phaedrus; 20.11.2009
comment
Да, я пробовал это. Иногда мне нужно выбранное значение, так как мне нужно получить данные, относящиеся как к тексту, так и к значениям раскрывающегося списка. - person Hcabnettek; 20.11.2009
comment
@Hcabnettek Ты когда-нибудь разбирался с этим? Вы можете изменить свое текстовое поле, чтобы использовать сценарий на стороне клиента, чтобы установить выбранное значение пустым, когда данные текстового поля изменились, чтобы, когда происходит публикация и текстовое поле изменялось, в раскрывающемся списке всегда был пустой выбор. - person Kelsey; 18.08.2010