ASP.NET Masterpage 中的 Google Maps API:为什么它保持空白?

2023-11-29

当在 Visual Studio localhost:port 服务器中启动时,这个简单的示例以纯 html 运行

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
<style type="text/css">
  html { height: 100% }
  body { height: 100%; margin: 0px; padding: 0px }
  #map_canvas { height: 100% }
</style>
<script type="text/javascript"
    src="http://maps.google.com/maps/api/js?sensor=true">
</script>
<script type="text/javascript">
    function initialize() {
        var latlng = new google.maps.LatLng(-34.397, 150.644);
        var myOptions = {
            zoom: 8,
            center: latlng,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        var map = new google.maps.Map(document.getElementById("map_canvas"),
        myOptions);
    }

</script>
</head>
<body onload="initialize()">
  <div id="map_canvas" style="width:100%; height:100%"></div>
</body>
</html>

我尝试在 Visual Studio 2010 默认模板下适应 asp.net,尽管它运行但没有显示任何地图,为什么?

母版页:

<%@ Master Language="C#" AutoEventWireup="true" CodeFile="Site.master.cs" Inherits="SiteMaster" %>

<!DOCTYPE html>
<html>
<head runat="server">
    <title></title>
    <link href="~/Styles/Site.css" rel="stylesheet" type="text/css" />
    <style type="text/css">
      html { height: 100% }
      body { height: 100%; margin: 0px; padding: 0px }
      #map_canvas { height: 100% }
    </style>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
    <script type="text/javascript"
        src="http://maps.google.com/maps/api/js?sensor=true">
    </script>
    <script type="text/javascript">
        function initialize() {
            var latlng = new google.maps.LatLng(-34.397, 150.644);
            var myOptions = {
                zoom: 8,
                center: latlng,
                mapTypeId: google.maps.MapTypeId.ROADMAP
            };
            var map = new google.maps.Map(document.getElementById("map_canvas"),
            myOptions);
        }

    </script>
    <asp:ContentPlaceHolder ID="HeadContent" runat="server">

    </asp:ContentPlaceHolder>
</head>
<body onload="initialize()">
    <form runat="server">
    <div class="page">
        <div class="header">
            <div class="title">
                <h1>
                    Google Maps in ASP.NET
                </h1>
            </div>
            <div class="loginDisplay">
                <asp:LoginView ID="HeadLoginView" runat="server" EnableViewState="false">
                    <AnonymousTemplate>
                        [ <a href="~/Account/Login.aspx" ID="HeadLoginStatus" runat="server">Log In</a> ]
                    </AnonymousTemplate>
                    <LoggedInTemplate>
                        Welcome <span class="bold"><asp:LoginName ID="HeadLoginName" runat="server" /></span>!
                        [ <asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LogoutText="Log Out" LogoutPageUrl="~/"/> ]
                    </LoggedInTemplate>
                </asp:LoginView>
            </div>
            <div class="clear hideSkiplink">
                <asp:Menu ID="NavigationMenu" runat="server" CssClass="menu" EnableViewState="false" IncludeStyleBlock="false" Orientation="Horizontal">
                    <Items>
                        <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home"/>
                        <asp:MenuItem NavigateUrl="~/About.aspx" Text="About"/>
                    </Items>
                </asp:Menu>
            </div>
        </div>
        <div class="main">
            <asp:ContentPlaceHolder ID="MainContent" runat="server"/>
        </div>
        <div class="clear">
        </div>
    </div>
    <div class="footer">

    </div>
    </form>
</body>
</html>

默认.aspx:

<%@ Page Title="Home Page" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true"
    CodeFile="Default.aspx.cs" Inherits="_Default" %>

<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">

</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">

  <div id="map_canvas" style="width:100%; height:100%"></div>

</asp:Content>

更新:这是渲染的 html

<!DOCTYPE html> 
<html> 
<head><title> 
    Home Page
</title><link href="Styles/Site.css" rel="stylesheet" type="text/css" /> 
    <style type="text/css"> 
      html { height: 100% }
      body { height: 100%; margin: 0px; padding: 0px }
      #map_canvas { height: 100% }
    </style> 
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
    <script type="text/javascript"

        src="http://maps.google.com/maps/api/js?sensor=true"> 
    </script> 
    <script type="text/javascript"> 
        function initialize() {
            var latlng = new google.maps.LatLng(-34.397, 150.644);
            var myOptions = {
                zoom: 8,
                center: latlng,
                mapTypeId: google.maps.MapTypeId.ROADMAP
            };
            var map = new google.maps.Map(document.getElementById("map_canvas"),
            myOptions);
        }

    </script> 


</head> 
<body onload="initialize()"> 
    <form method="post" action="default.aspx" id="ctl01"> 
<div class="aspNetHidden"> 
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUKMTY1NDU2MTA1MmRkgEGBoemMtm+/v6V+m9lmIvRj4NCUaPh/xvbFFRPTsmc=" /> 
</div> 


<script src="/googlemapstutorial/WebResource.axd?d=pX2KOH15DXBIWd9F3pw0pYRvxH0rCs_7BzgxTRUKsZkV8iILrBf16Um3jfikb78HXD5CWcorG2sj456pwVRsUev4lKFhNxwLEsZ0G3MsXkw1&amp;t=634222671270572046" type="text/javascript"></script> 
    <div class="page"> 
        <div class="header"> 
            <div class="title"> 
                <h1> 
                    Google Maps in ASP.NET
                </h1> 
            </div> 
            <div class="loginDisplay"> 

                        [ <a href="Account/Login.aspx" id="HeadLoginView_HeadLoginStatus">Log In</a> ]

            </div> 
            <div class="clear hideSkiplink"> 
                <a href="#NavigationMenu_SkipLink"><img alt="Skip Navigation Links" src="/googlemapstutorial/WebResource.axd?d=TJBKVc8nekHCgPywjGbDmMgRlrAm9FIu3FELc6xCCTlRxYfnY8nfoPOyAs8B8fawdRaonWVsHF9mLU3lY2PCkgjBIN2S1Hne4nX1WfWtaN01&amp;t=634222671270572046" width="0" height="0" style="border-width:0px;" /></a><div class="menu" id="NavigationMenu"> 
    <ul class="level1"> 
        <li><a class="level1" href="Default.aspx">Home</a></li><li><a class="level1" href="About.aspx">About</a></li> 
    </ul> 
</div><a id="NavigationMenu_SkipLink"></a> 
            </div> 
        </div> 
        <div class="main"> 


  <div id="map_canvas" style="width:100%; height:100%"></div> 


        </div> 
        <div class="clear"> 
        </div> 
    </div> 
    <div class="footer"> 

    </div> 

<script type='text/javascript'>new Sys.WebForms.Menu({ element: 'NavigationMenu', disappearAfter: 500, orientation: 'horizontal', tabIndex: 0, disabled: false });</script></form> 
</body> 
</html> 

Google 都是 Javascript,所以它在母版页中的事实应该不重要,除非你有本地路径问题,我没有看到这一点。

我会使用 Firefox 的错误控制台来查看页面加载时是否存在任何 Javascript 错误。

EDIT

我认为这是一些奇怪的标签嵌套问题,但实际上您正在使用百分比作为维度。 “100%”表示使用填充封闭容器的空间,但如果容器是空的,我们不会得到尺寸。如果您将地图 div 设置为固定大小,您将看到您的地图。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ASP.NET Masterpage 中的 Google Maps API:为什么它保持空白? 的相关文章

  • 图表.js.如何更改“标签”数组的字体样式?

    我从 Chart JS 库中获取了一个图表 截屏 https i stack imgur com DnuRq png var ctx document getElementById myChart var data labels HTML
  • querySelector 搜索直接子级[重复]

    这个问题在这里已经有答案了 我有一些类似 jquery 的函数 function elem return gt someselector elem 问题是我怎样才能做同样的事情querySelector 问题是 gt 选择器中querySe
  • 没有为此应用程序定义有效的密钥库

    我想将 google 地图 api 添加到我的反应本机项目中 我遵循文档 但是当我运行 expo fetch android hashes 时给我这些错误 没有为此应用程序定义有效的密钥库 keytool 错误 java lang Exce
  • React Native 无法访问 Cloud Firestore 后端

    我之前使用的是 firebase 实时数据库 但现在想切换到 Cloud Firestore 但即使经过身份验证 也会收到以下错误 我目前正在使用 Android Simulator 尝试禁用我的实时数据库 但找不到解决方案 Firebas
  • 用更好的模式替换开关(Javascript)

    我必须升级我的应用程序以根据用户类型和角色属性显示页面 目前 我使用一个简单的 switch 语句来根据用户类型来执行此操作 例如 switch type case a return CONSTANT ONE case b return C
  • 解释一下这个令人困惑的 dojo 教程声明语法

    我正在阅读使用的语法道场的声明 http dojotoolkit org documentation tutorials 1 8 declare 用于班级创建 描述很混乱 The declare function is defined in
  • 无需重定向的 HTML 页面提交

    有没有什么方法可以在不使用ajax的情况下提交html表单而无需从当前页面重定向 你可以设置一个target 为您form 这样您就可以将表单提交到新选项卡 target blank 或一个小的 隐藏的iframe target nameo
  • 替换img路径jquery

    我正在尝试替换 jquery 中的 img 路径 注入远程页面 replaceexample com thumbs withexample com images 我已经尝试过这个 但似乎不起作用 img attr src replace t
  • 公开闭包内的方法

    当我们在闭包内创建一个方法时 该方法将成为该闭包的私有方法 并且在我们以某种方式公开它之前无法访问它 怎么可能暴露呢 您可以返回对它的引用 var a function var b function I m private alert go
  • 等待异步 grunt 任务完成

    我收到了 grunt 设置 其中一个新任务应该执行 grunt task run 已经存在的任务 要执行的任务是异步的 新任务应该等待异步任务完成 执行此操作的首选方法是什么 grunt 已经涵盖了这一点 你应该将你的任务声明为异步任务 并
  • 文件缓存:查询字符串与上次修改时间?

    我正在研究缓存网站资源的方法 并注意到大多数与我类似的网站都使用查询字符串来覆盖缓存 例如 css style css v 124942823 后来 我注意到每当我保存 style css 文件时 最后修改的标头都会 更新 使得查询字符串变
  • 从浏览器访问本地文件?

    您好 我想从浏览器访问系统的本地文件 由于涉及大量安全检查 是否可以通过某种方式实现这一目标 或使用 ActiveX 或 Java Applet 的任何其他工作环境 请帮帮我 要通过浏览器访问本地文件 您可以使用签名的 Java Apple
  • WebpackError:ReferenceError:Gatsby 上未定义窗口

    我已经在互联网上进行了大量搜索 但无法解决这个问题 我正在使用 Gasby 开发静态页面 但遇到此错误 WebpackError ReferenceError window is not defined 我的线索是 这与我正在使用的引导 模
  • D3 强制布局,较大的节点聚集在中心

    我一直在修改将用于标签云的强制布局 每个标签都由一个
  • Firebase 身份验证和实时应用程序数据库如何保护自身安全?

    从一般开发的角度来看 我很好奇如何保护在线资源的访问 我们使用以下 Firebase 配置参数初始化 Web 应用程序 apikey authdomain projectid databaseurl messagesenderid 服务器如
  • 获取类中的所有静态 getter

    假设我有这个类 我像枚举一样使用它 class Color static get Red return 0 static get Black return 1 有没有类似的东西Object keys to get Red Black 我使用
  • Android Google 地图无法在当前主题中找到样式“mapViewStyle”

    添加谷歌地图视图时 我扩展了MapView 使用xml编辑器将其添加到活动中 并将我的谷歌地图api密钥手动添加到布局xml文件中 我的权限在清单文件中允许互联网 我想知道的是 在 xml 编辑器中 我收到错误 无法在当前主题中找到样式 m
  • 使用严格模式编译指示时如何声明全局变量

    使用自调用函数来包装严格模式兼容代码 通常称为严格模式编译指示 被认为是一种很好的做法 function use strict Strict code here 我的问题是在这种情况下如何声明全局变量 我今天知道的三种替代方案 替代方案 1
  • 突出显示单词并提取其附近文本的函数

    我有一个文本例如 Etiam porta semmalesuada magna mollis euismod 整数取数 ante venenatis dapibus posuere velit aliquet 埃蒂亚姆 门塔 塞姆 male
  • 在引导程序中以编程方式更改选项卡窗格选项卡

    我使用的选项卡窗格定义为 ul class nav nav tabs li a href personal Personal Information a li li class active a href contact Contact a

随机推荐

  • 使用nodejs从文件中删除最后n行

    我正在尝试使用 fs 作为 nodejs 的一部分从文件中删除最后 3 行 我目前正在将文件读入内存 然后在没有这 3 行的情况下再次写入它 但我确信有一种更有效的方法 不需要将整个文件读入内存 我现在的代码 fs readFile fil
  • 如何在 on_member_join()discord.py 中向成员发送私人消息?

    这就是我所拥有的 client command pass context True client event async def on member join ctx member print f member has joined a s
  • 如何在不使用 SMIL 的情况下制作路径形状动画?

    下面的代码片段显示了我想做的事情 但也存在一些问题 不使用SMIL如何制作这个动画 SMIL 已被弃用 并且浏览器支持较差 如何使黑色路径穿过蓝色路径的右端 红色 蓝色和绿色路径的长度相同 动画应该重复向下 向上 向下 向上 依此类推 第一
  • Fluent nHibernate:需要多对多自引用映射的帮助

    我有一个名为 User 的实体 它可以有一个名为 Friends 的其他用户列表 有点像 Facebook 在我的 User 实体中 我声明了一个公共虚拟 IList Friends get private set 属性 并在构造函数中创建
  • 使用 ng-options 时如何将所选选项的文本分配给另一个模型?

    我可以创建一个选择标签并将数据放入其中 我可以将该选择的选定选项分配给模型 但无法将其文本分配给另一个模型 这是下面的例子jsFiddle链接 html div div div div
  • 在 VS 2010 Express 版本中发布构建事件?

    到目前为止 我一直在 VS 2008 中使用后期构建事件 并下载了 2010 Express 版本来查看新功能 2008 年 构建事件位于项目属性 gt 编译 gt 构建事件中 我在 2010 Express 版本中没有看到该按钮 这是因为
  • pandas 到 csv TypeError: get_handle() 有一个意外的关键字参数“错误”

    我有一张大桌子 我根据日期将其切成许多小桌子 dfs for fecha in fechas dfs fecha df df date fecha set index Hour now I can acess the tables like
  • 如何从 moment.js 获取月份的整数值

    我正在使用 Moment js 将日期添加到我正在制作的选项列表中 以便我可以使用这些日期来显示可用的约会 例如 某人可以从选项列表中选择 2 月 3 日星期五 然后选择可用时间列表将于2月3日出现 我遇到的问题是我正在使用一个在线调度 A
  • 为什么我需要 IoC 容器而不是简单的 DI 代码? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 Locked 这个问题及其答案是locked因为这个问题是题外话 但却具有历史意义 目前不接受新的答案或互动 我一直在使用依赖注入 DI 一段时间 注入构造函数 属性或方法 我从来没有觉得
  • 如何使用非法名称访问此对象属性?

    我正在使用某人编写的 PHP 类来与 BaseCamp API 进行交互 我正在执行的特定调用是检索待办事项列表中的项目 效果很好 我的问题是 我不知道如何访问todo items返回的对象的属性 这是返回对象的 var dump obje
  • 将变量从 Shell 脚本传递到 Fortran 90 程序

    我被这个小问题困住了 我想知道是否可以将 bash shell 脚本的变量传递给 f90 代码 我很确定之前已经在这里讨论过 但我找不到完全相同的副本 您可以直接将参数作为参数传递给程序 program arg1 arg2 您可以使用子例程
  • 什么是胖接口?

    你好 我在电影行业工作 模拟和应用工作室效果 我可以问一下什么是胖接口吗 我听到网上有人说它是什么 编辑 是的here尼可波拉斯说 我相信非常好的指示 fat interface an interface with more member
  • 如何更改PHP中数组的索引[重复]

    这个问题在这里已经有答案了 我想在执行一些操作后更改数组的索引 我的实际输出是 Array 0 gt Array 0 gt 4 1 gt 6 2 gt Array 0 gt 1 1 gt 7 5 gt Array 0 gt 1 1 gt 7
  • 如何从 Http 集成流程创建 Spring Reactor Flux?

    我有一个与此非常相似的问题如何从 ActiveMQ 队列创建 Spring Reactor Flux 唯一的区别是消息来自 Http 端点而不是 JMS 队列 问题是消息通道由于某种原因没有被填充 或者它没有被 Flux from 拾取 日
  • JavaScript substr();按字限制而不是字符

    我想用单词而不是字符来限制子字符串 我正在考虑正则表达式和空格 但不知道如何实现 场景 使用 javascript jQuery 将一段单词限制为 200 个单词 var postBody postBody substr 200 这很棒 但
  • MongoDB 未授权查询 admin.system.users

    我对 MongoDb 有点陌生 我正在使用 MongoDb v 2 4 这里的问题是 当我使用 auth 参数运行 mongod 时 即使在经过身份验证后 我也无法执行简单的操作 例如 显示用户 但如果我在没有 auth 参数的情况下运行
  • 复选框未显示在下拉列表中

    我必须从下拉列表中进行多项选择 所以我已经提到了这个link 但是 当我尝试在浏览器中打开该程序时 我没有看到该复选框 也无法选择更多数据 我的脚本看起来像这样
  • 如何在liferay DXP中添加语言图标

    如何在liferay 7 liferay ce portal 7 0 ga4 中添加语言图标图像 我已按照以下文章中提到的步骤进行操作 https web liferay com web salman khan blog blogs add
  • Java正则表达式匹配无回车符后跟换行符

    我试过了 r n但这行不通 你怎么做到这一点 我很欣赏 在类似 Java 的代码中 您需要使用 r n 谢谢你 根据您的要求 r n 前面有除回车符之外的任何字符的换行符 这意味着换行之前必须有一个字符 and 两个符号将被匹配
  • ASP.NET Masterpage 中的 Google Maps API:为什么它保持空白?

    当在 Visual Studio localhost port 服务器中启动时 这个简单的示例以纯 html 运行