2014-11-16 3 views
3

Я прочитал несколько сообщений о том, как выбрать первый вариант в элементе HTML Select с помощью jQuery, но я не могу заставить его работать на мобильной странице jQuery.Выберите первый вариант в элементе select с jQuery

Выберите элемент:

<select id="myList"> 
    <option value="" selected>Select a List</option> 
    <option value="1">Item 1</option> 
    <option value="2">Item 2</option> 
    <option value="3">Item 3</option> 
</select> 

Сценарий Я вызова, чтобы выбрать первый вариант:

$("#myList").val($("#myList option:first").val()); 

Я не пытаюсь получить значение первого варианта в выбранном элементе, I Я действительно пытаюсь его выбрать.

Есть ли что-то еще, что мне нужно сделать, чтобы заставить это работать на мобильной странице jQuery?

Спасибо.

+0

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

+0

Извините, если я не понял. Я имел в виду «сделать первый вариант в этом поле». В принципе, если Use выбирает Item 1, то onChange я перенаправляю их на другую «страницу» на моем мобильном сайте jQuery. Затем, когда они нажимают кнопку «Назад» в меню, я возвращаю их на «страницу» с помощью «Выбрать на нем» и хочу выбрать «Выбрать список». Благодарю. – RobertFrenette

+0

Хорошо, просто ответил, дайте мне знать, если это сработает для вас –

ответ

4

Одним из решений является использование selectmenu("refresh").

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

//refresh value   
$('select').selectmenu('refresh'); 

//refresh and force rebuild 
$('select').selectmenu('refresh', true); 

source

HTML

<select id="myList"> 
    <option value="" selected>Select a List</option> 
    <option value="1">Item 1</option> 
    <option value="2">Item 2</option> 
    <option value="3">Item 3</option> 
</select> 

JS

$("#myList").val($("#myList option:eq(1)").val()); 
$("#myList").selectmenu("refresh"); 

fiddle

+1

Это прекрасно. Это было обновление, которое мне не хватало. Благодаря! – RobertFrenette

-1

Пожалуйста, исправьте меня, если я не получу проблему правильно. Если вы просто хотите, чтобы получить значение выбранного параметра вы можете просто получить его

$("#myList").val(); 

Надеется, что это будет какой-то помощь

Счастливого обучение :)

+2

OP не пытается получить значение. Кроме того, ваше решение не будет работать, так как ваш селектор неверен. – Tomanow

+0

Не знаете, как этот селектор не работает – Vatsal

0

Чтобы сделать первый параметр в списке выбрано использование этого:

$("#myList option:eq(0)").attr("selected","selected"); 

Но в вашем случае я думаю, что первый вариант будет выбран по умолчанию, так что если вы имели в виду вариант со значением = «1», чем использовать это:

$("#myList option:eq(1)").attr("selected","selected"); 

UPDATE:

Если у вас есть значение параметра, вы можете также использовать это:

$("#myList option[value='2']").attr("selected","selected"); 
Смежные вопросы