私はこの問題に頭を悩ませています。次のような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
、およびモバイル デバイスのみで、すべてのモバイル ブラウザーでのみです。
何か案は?