2011-12-15 2 views
2

Моя проблема в том, что когда страница обновляется, я хочу, чтобы «выбор» был прокручен до самого верха. Однако, если пользователь прокрутил окно выбора вниз, чтобы просмотреть параметры (не обязательно даже щелкая по любому из них) до обновления, поле «выбрать» не вернется в начало.Как прокрутить окно выбора HTML к опции без прямого выбора этой опции?

Я видел ответы, где люди говорят, что просто используют selectedIndex, чтобы выбрать первый вариант в списке, и, таким образом, он автоматически прокрутит вверх, но это НЕ вариант. При обновлении страницы, ничего не должно быть выбрано, таким образом, единственный код, у меня есть на данный момент:

document.form1.componentselect.selectedIndex = -1; 

который эффективен при очистке любых выбранных в «componentselect», но не сбрасывает прокрутки должность.

FYI, я использую прямой HTML и JS, нет JQuery или что-то в этом роде. Благодарю.

ответ

0

Все, что вам нужно сделать, это сначала выбрать верхний элемент (как вы сказали, вы не хотите этого делать), но затем установите его на -1!

document.form1.foo.selectedIndex=0; 
document.form1.foo.selectedIndex=-1; 

В то время как я смотрел на это, я понял, как заставить его вспомнить, что было выбрано, в том случае, становится проблемой:

http://jsfiddle.net/ryleyb/qPJ4S/

0

Я думаю, что невозможно изменить положение прокрутки в традиционных выделениях (выберите из тега, ни одного окна, сгенерированного плагинами javascript), потому что это окно управляется непосредственно браузером и темой пользователя без прямого вмешательства со стороны javascript.

Я считаю, что единственный способ «сбросить» дисплей - заставить пользователя снова щелкнуть по полю, скрыв и перерисовывая тег select. Но вам нужно будет щелкнуть, чтобы снова открыть окно, и это мешает больше, чем помогает пользователю.

+0

Wow. Мне кажется, что для веб-разработчиков было бы очень распространенной/основной необходимостью сбросить их флажки для выбора (до состояния, в котором они находились при начальной загрузке страницы) при обновлении. И не заставлять все прокручивать все волей-неволей после обновления. Спасибо за знание, но ваш ответ удивил меня! –

+0

Возможно, я не понял эту проблему правильно, вы говорите о многократной коробке или коробке только с одной строкой? –

Смежные вопросы