Я рву волосы над этой проблемой. У меня есть код JavaScript, который выглядит следующим образом:
<script type=text/javascript>
function readVals(){
val1 = $('#select1').val()
val2 = $('#select2').val()
val3 = etc.
}
</script>
<select id='select1'>
<option value='val1'>val1</option>
<option value='val2'>val2</option>
</select>
<select id='select2'>
<option...
Метод readVals отлично работает при запуске с рабочего стола, протестирован на Firefox, Chrome, Safari, а также на Mac, Ubuntu и Windows. Тем не менее, для Android и iPhone, независимо от мобильного браузера, $ ('# select2'). Val () всегда возвращает 0. Что еще более странно, так это то, что я создал другую тестовую функцию, подобную этой:
function getVal2(){
alert($('#select2').val())
}
getVal2()
объявляется прямо перед readVals()
на <head>
страницы и сообщает правильное значение, даже на мобильных устройствах. Поэтому я запускаю getVal2()
и вижу правильное значение. Затем я сразу запускаю readVals()
и получаю неправильное значение, но только для val2
и только на мобильных устройствах, но в любом мобильном браузере.
Есть идеи?