我正在尝试从2个asp:HiddenFields中获取值,并将它们存储在JavaScript中的var latitudeDB
,var longitudeDB
中。设置在 HiddenFields 中的这两个值来自我的数据库。我已经检查了Debug.WriteLine
以检查网站启动时的2个值,它们都是数据库中的确切值。
请问如何才能将 HiddenFields 中的2个值存储到var latitudeDB
和var longitudeDB
以供将来使用?这两个值应该是FLOAT / DOUBLE才能使用......
在Page_Load中,
foreach (DataRow r in ds.Tables[0].Rows)
{
accountDB = r["AccountStatus"].ToString();
latitudeDB = Convert.ToDouble(r["Latitude"]);
longitudeDB = Convert.ToDouble(r["Longitude"]);
usernameDB = r["Username"].ToString();
ipDB = r["IPAddressOfCreation"].ToString();
}
HF_Latitude.Value = latitudeDB.ToString();
HF_Longitude.Value = longitudeDB.ToString();
Debug.WriteLine(HF_Latitude.Value);
Debug.WriteLine(HF_Longitude.Value);
在我的服务器端表单(JavaScript)中,
<script type="text/javascript">
function initMap() {
var latitudeDB = parseFloat(document.getElementById("<%= HF_Latitude.ClientID %>").value);
var longitudeDB = parseFloat(document.getElementById("<%= HF_Longitude.ClientID %>").value);
//var latitudeDB = $("#<%= HF_Latitude.ClientID %>").val();
//var longitudeDB = $("#<%= HF_Longitude.ClientID %>").val();
var mapProp = {
zoom: 15,
center: new google.maps.LatLng(latitudeDB, longitudeDB),
mapTypeId: google.maps.MapTypeId.HYBRID,
};
var map = new google.maps.Map(document.getElementById("generatedMap"), mapProp);
var marker = new google.maps.Marker({
position: new google.maps.LatLng(latitudeDB, longitudeDB),
map: map,
title: "<div style = 'height:50px;width:120px'><b>Consumer's location:</b><br />Latitude: " + latitudeDB + "<br />Longitude: " + longitudeDB,
});
}
</script>
HiddenFields,
<asp:HiddenField runat="server" ID="HF_Latitude" />
<asp:HiddenField runat="server" ID="HF_Longitude" />
请欣赏任何帮助!非常感谢你......
答案 0 :(得分:0)
我解决了我的问题。 HiddenFields应该放在Javascript上面。