0

我有一个执行良好的 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"/>

更多信息

添加类型没有任何区别,只是为了咯咯笑,我还通过警报输出了它:

对象 HTMLInputElement

我注意到的另一件事是服务器进行了重新加载。嗯?我尝试手动调整该值,但实际上会引发错误。真正的问题不相关,所以我在这里打开了一个新的问题。

Javascript局部和全局变量在回调函数中失去作用域

4

0 回答 0