Я хочу добавить элементы в поле со списком ASP.Net с помощью Javascript

Я хочу добавить элемент в поле со списком ASP.Net с помощью Javascript. Я могу получить идентификатор (без главной страницы). Как я могу добавить значения в поле со списком из Javascript? Мой нынешний код выглядит так.

    //Fill the years (counting 100 from the first)
    function fillvarYear() {
        var dt = $('#txtBDate').val();
        dt = dt.toString().substring(6);

        var ye = parseInt(dt);

        //Loop and add the next 100 years from the birth year to the combo
        for (var j = 1; j <= 100; j++) {
            ye += 1; //Add one year to the year count

            var opt = document.createElement("OPTION");
            opt.text = ye;
            opt.value = ye;
            document.form1.ddlYear.add(opt);
        }
    }
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
1 941
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Я нашел возможное решение. Я не знаю, почему предыдущий код у меня не сработал, но строка ниже

document.form1.ddlYear.appendChild (новый вариант (да, да));

Всегда помните, что в элементах управления ASP.NET нет ничего «фантастического» - они всегда в какой-то момент становятся стандартными элементами HTML.

Попробуйте проверить этот сайт. У него довольно хорошая демонстрация и обзор. Обратите внимание, однако, что вы изменение данных на стороне клиента - это означает, что вам нужно будет делать это при каждом запросе, потому что ViewState не будет обновляться.

TBH, вам, вероятно, лучше просто использовать элемент управления HTML, чем ASP ComboBox ..

Могу я спросить, почему вы меняете элементы с помощью Javascript? (из любопытства) :)

Да ... Пункты в выпадающем списке генерируются на основе числа (года рождения), которое вводит посетитель. Обычно мне просто нужно заполнить его следующими 100 годами от рождения. Я выбрал javascript, потому что мне нужен опыт без обратной передачи (и не хочу использовать панель обновлений). Теперь у меня есть еще одна проблема - <b> Как мне увидеть значение, установленное в комбинированном списке в коде ASP.Net? </b> Есть идеи?

Cyril Gupta 11.11.2008 12:51
Ответ принят как подходящий

Чтобы увидеть значение обратной передачи:

string selectedValue = Request.Params[combobox.UniqueId]

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

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

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