Есть ли способ выбрать -1 индекс без добавления new ListItem("", "-1",true))
из кода, как jQuery?Настройка SelectedIndex -1 ASP.NET DropDownList
Вот пример:
Есть ли способ выбрать -1 индекс без добавления new ListItem("", "-1",true))
из кода, как jQuery?Настройка SelectedIndex -1 ASP.NET DropDownList
Вот пример:
ли вы имеете в виду, как это?
DropDownList1.SelectedIndex = -1;
Вот как обычно это делается с помощью кода.
ETA: Теперь я вижу, о чем вы говорите. И я боюсь, что не вижу, как это можно сделать с серверной стороны. Все, что вы можете сделать на стороне сервера, - это управление рендерингом. Насколько я могу судить, даже если сделать этот код:
<select id="testSelect" selectedIndex="-1">
... она по-прежнему появляется с верхним вариантом появляясь быть выбран.
Похоже, что только при явном настройке его на -1 с javascript после рендеринга он будет отображаться с абсолютно ничем не выбранным. Это появляется, как будто это невозможно сделать декларативно в HTML.
Если вы можете найти способ написания тега в HTML, чтобы он отображался таким образом при загрузке, тогда вы можете настроить рендеринг в кодировке (используя .AddAttribute()
или аналогичный), но если это невозможно сделать с помощью декларации, ему понадобится javascript.
(Конечно, вы можете написать фрагмент кода JQuery, чтобы изменить все выпадающие на SelectedIndex = -1, но вы думали об этом!)
Если вы связываете его на Page_Load событий его делает запись назад (AutoPostBack='True')
.Это просто перепривязывают когда-либо время, индекс изменяется
if (!IsPostBack)
{
BindDropDownList1();
}
(или)
Если выше Dosen решение «Т работы попробуйте добавить пустой элемент, как показано ниже:
this.myDropDownList.Items.Add(new ListItem("Select...", ""));
Нет, я не хочу добавлять новый ListItem, пожалуйста, посмотрите, как jQuery делает http://jsfiddle.net/eL8sn/ – christiangobo
JQuery - это код на стороне клиента, но вы пытаетесь сделать это из кода, который является серверной. Вы должны сделать это в любом случае или попытаться использовать обычный элемент управления html и использовать для этого ajax. – coder
SelectedIndex - это то же свойство с codebehind или на стороне клиента, когда .NET визуализирует DropDownList, он будет отображаться как обычный элемент управления html. – christiangobo
Вы можете сделать это
строка selectStr = "SELECT"; string allStr = "ALL"
ListItem allLI = новый ListItem (allStr, allStr);
ListItem selectLI = новый ListItem (selectStr, selectStr);
DropDownList.Items.Add (selectLI); DropDownList.Items.Add (allLI);
// код для заполнения DropDownList со списком, что ваш запрос возвращает
DropDownList.SelectedValue = selectStr;
Пожалуйста, прочитайте вопрос «не добавляя новый ListItem», спасибо в любом случае – christiangobo
Это не работает, всегда оставайтесь в индексе 0 – christiangobo
Что происходит? Чего вы хотите, чтобы этого не случилось, если быть точным? –
Посмотрите на это http://jsfiddle.net/eL8sn/ – christiangobo