Значение, возвращаемое из с помощью jQuery, имеет (.) в начале и конце

#javascript #jquery

#javascript #jquery

Вопрос:

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

 $(function() {
  $("#id").change(function() {
    var myVar = $(this).children('option:selected').val();
    console.log(myVar);
  });
});  
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<select id="id">
  <option value="any">Any</option>
  <option value="value">Value</option>
</select>  

Результат .value. .

Но при замене val() на text()

Результат value .

Пожалуйста, помогите разобраться в этой проблеме.

Комментарии:

1. не удается воспроизвести

2. Оно работает так, как ожидалось. .val() получает это значение <значение параметра=» value «>Значение</option>. И когда вы используете .text, оно получает это значение <значение параметра=»value»> Value </option>. Что в этом плохого. Что вы пытаетесь сделать?

3. Ни один из результатов, которые, по вашим словам, вы получаете, не соответствует тому, что выдает этот код.

4. может ли это быть проблемой с браузером? Или это может быть jQuery 2.0.0?

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