代码之家  ›  专栏  ›  技术社区  ›  Daniel A. White

阻止母版页自动更正或调整URL

  •  0
  • Daniel A. White  · 技术社区  · 16 年前

    编辑 我不想在全球范围内这样做,我想在一个单独的母版页上这样做。

    编辑2 我没有访问网址的权限。它们是由站点地图生成的。

    编辑3 当我的母版页在 \browsers\iphone\ \browsers\iphone\contact-us.aspx . 将站点地图数据绑定到菜单时,该值是正确的。

    1 回复  |  直到 16 年前
        1
  •  1
  •   KP.    16 年前

    ~/ 方法,以指示从站点根开始的路径。

    如果母版页是 /App_Master/MyMaster.master

    <link rel="Stylesheet" type="text/css" href="/Path/From/The/Root.css" />
    <script type="text/javascript" src="/Path/From/The/Root.js" ></script>
    
    <a href="/Path/From/TheRoot.html">A non server-side link should start in forward slash and provide entire path</a>
    
    <asp:HyperLink ID="MyHyperLink" runat="server" NavigateUrl="~/Path/to/Page.aspx" Text="Use the tilde-slash and use path from site-root"/>
    

    而不是像这样的事情:

    <link rel="Stylesheet" type="text/css" href="../SomeRelative/Path.css" />
    <script type="text/javascript" src="Path/Not/From/The/Root.js" ></script>
    

    编辑:

    ~/My/Path.aspx

    编辑2:

    感谢您澄清数据源和格式。

    ~/mypage.aspx 不 mypage.aspx

    ~/mypath.aspx

    • 相对url 我的网页.aspx 在同一个文件夹中
    • 相对url ../mypage.aspx 作为一个文件夹
    • url /mypage.aspx 从根开始

    • ~/mypage.aspx 从根开始

    使用url contact-us.aspx 应该 src 和 href 路径工作。如果您将sitemapdatasource和菜单放在普通页面上,嵌套在文件夹中,而忘记使用母版页,您会发现问题仍然存在。

    很抱歉要争论,但是当数据源中的url不符合简单的url格式时,我不认为修改web上的核心url构建功能有什么价值 ~/path/to/some/file.aspx .

    如果我错过了什么,也许其他人可以插话。。。

    推荐文章