【发布时间】:2017-12-13 23:23:49
【问题描述】:
我将带有 lat 和 long 变量的数据库中的模型传递给视图,然后视图将其传递给 javascript 文件。但是每当我运行该网站时,我都会收到未定义 Lat 和 Lng 的错误。它们不知何故不存在。虽然我可以从视图中访问它们并且值绝对正确,但我检查了它确实被传递给视图。为什么我不能正确地将视图中的变量传递给 JS 文件?
function initMap() {
var uluru = { lat: Lat, lng: Lng };
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 15,
center: uluru
});
var marker = new google.maps.Marker({
position: uluru,
map: map
});
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
namespace Google.Models
{
public class Marker
{
public int MarkerID { get; set; }
public string Adres { get; set; }
public float Lat { get; set; }
public float Lng { get; set; }
}
}
@model Google.Models.Marker
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="~/css/custom.css">
<link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.css" />
<script src="~/js/googleMap.js"></script>
<script>
var Lat = @Model.Lat
var Lng = @Model.Lng
</script>
</head>
<body>
<h1>@Lat</h1>
<div class="container">
<center><h1>Responsive Google Map</h1></center>
<div class="row">
<div class="col-lg-7 col-md-7 col-sm-7 col-xs-7 top-buffer">
<div id="map"></div>
</div>
<div class="col-lg-5 col-md-5 col-sm-5 col-xs-5 top-buffer"></div><h1>Contact Informatie</h1></div>
</div>
<script async defer src="https://maps.googleapis.com/maps/api/js?key=AIzaSyCUxVA8CRavXv6yP5M4rIuSK9xJt8kgPwg&callback=initMap"></script>
</body>
</html>
【问题讨论】:
-
不,我遇到了麻烦
-
您遇到问题并不意味着它不是骗子。
-
真的不一样。他在另一个话题上遇到了麻烦。
-
使用
var Lat = @Html.Raw(Json,Encode(Model.Lat))将模型值正确分配给您的变量
标签: javascript html asp.net-mvc