私は正常に実行されているJavaScript関数を持っています。フォーム(クライアント側)を更新すると、入力ボックスのハンドルを取得し、それらの値を読み取る(警告する)ことができますが、それらを設定することはできません....まあ、それらをクライアントとして設定していないようですフォームは新しい値で更新されません。
問題の行は次のとおりです。
document.getElementById("Address_AddyLat").value = results[0].geometry.location.lat();
上記のように、要素と結果の両方が有効です (アラート)。そこに値をハードコーディングしようとしましたが、うまくいきませんでした??
完全なスクリプトは次のとおりです。
function codeAddress()
{
var geocoder = new google.maps.Geocoder();
var addy1
......
geocoder.geocode({ 'address': fullAddress }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK)
{
document.getElementById("Address_AddyLat").value = results[0].geometry.location.lat();
document.getElementById("Address_AddyLong").value = results[0].geometry.location.lng();
}
else
{
alert("Geocode was not successful for the following reason: " + status);
}
});
}
レンダリングされた html は次のとおりです。
<input name="Address.AddyLat" class="t-input" id="Address_AddyLat" style="color: rgb(255,255,255);" type="text" data-val-required="Internal Error Address Latitude Required" data-val-number="The field Address Latitude must be a number." data-val="true" value="999.9999"/>
より詳しい情報
タイプを追加しても違いはなく、笑い声のためにアラートを介して出力しました:
OBJECT HTMLInputElement
私が気付いたもう 1 つのことは、サーバーがリロードを行うことです。は?値を手動で調整しようとしましたが、実際にはエラーがスローされます。本当の問題は関係ないので、ここで新しい質問を開きました。