Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   какое событие лучше выбрать для выпадающего списка? (https://javascript.ru/forum/jquery/39075-kakoe-sobytie-luchshe-vybrat-dlya-vypadayushhego-spiska.html)

Faab 14.06.2013 12:27

какое событие лучше выбрать для выпадающего списка?
 
Какое событие лучше применить к выпадаюшему списку? Если применяю change(), то при выборе самого первого первого значения, событие не срабатывает - что разумеется верно.

Как бы решить данную ситуацию, что бы если пользователь нажал на список, но решил не вносить изменения, я получил бы всё равно значение списка. Спасибо.

ksa 14.06.2013 13:41

Faab, что есть "выпадающий список"?

Faab 14.06.2013 14:33

<select id="sel">
  <option value="a">a</option>
  <option value="b">b</option>
</select>


$("#sel").change(function(){
        var variableX = $(this).val();
    });


Пока я не выберу любое другое значение кроме a фунция val() не сработает. А желаемый результат: что бы функция val() срабатывала как только пользователь кликнет по любому элементу HTML-интерфейса в виде раскрывающегося списка.

Вопрос фигня конечно, но думал я не первый у кого была такая проблема.

devote 14.06.2013 14:57

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select id="sel">
  <option value="a">a</option>
  <option value="b">b</option>
</select>
<script>
$("#sel").bind('change focus', function(){
    var variableX = $(this).val();
    alert(variableX);
});
</script>

ksa 14.06.2013 14:59

Цитата:

Сообщение от Faab
Пока я не выберу любое другое значение кроме a фунция val() не сработает.

Легким движением руки брюки превращаются... Превращаются брюки... В оригинальные шорты! (с) к/ф Брилиантовая рука

<select id="sel">
  <option value=""></option>
  <option value="a">a</option>
  <option value="b">b</option>
</select>

Faab 14.06.2013 15:01

Спасибо.

Цитата:

Сообщение от devote (Сообщение 256316)
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select id="sel">
  <option value="a">a</option>
  <option value="b">b</option>
</select>
<script>
$("#sel").bind('change focus', function(){
    var variableX = $(this).val();
    alert(variableX);
});
</script>

В примере ВСЕГДА тут же выскакивает a (( Попробую найти ошибку, правда я пока не понимаю твой код.

Faab 14.06.2013 15:09

Цитата:

Сообщение от ksa (Сообщение 256317)
Легким движением руки брюки превращаются... Превращаются брюки... В оригинальные шорты! (с) к/ф Брилиантовая рука

<select id="sel">
  <option value=""></option>
  <option value="a">a</option>
  <option value="b">b</option>
</select>

Оригинально. Но помимо пустого места, нужно навешивать дополнительную проврку. Ведь пользователь может передумать или/и выбрать случайно пустышку. Но не плохая попытка.

ksa 14.06.2013 15:13

Faab, это не попытка, а всеголишь вариант реализации. :D
Поскольку х/з, что тебе в итоге нужно...

Deff 14.06.2013 15:13

Цитата:

Сообщение от Faab
Ведь пользователь может передумать или/и выбрать случайно пустышку.

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<select id="sel">
  <option value="">Выбрать значение</option>
  <option value="a">a</option>
  <option value="b">b</option>
</select>
<script>
$("#sel").bind('change focus', function(){
    var variableX = $(this).val();
    if(!variableX) return false;
    alert(variableX);
});
</script>

Faab 14.06.2013 15:15

Devote Твой код рабртает правильно, просто такой подход. Спасибо, как раз то что я хотел. +1


Часовой пояс GMT +3, время: 23:01.