ASP / HTML - 如何写" ASP代码块内的字符(引号)?

时间:2015-03-11 17:12:06

标签: c# html asp.net

我有一行如下

enter image description here

渲染结果为:

“>请再试一次。

问题在于产生的响应出错了,因为它识别出第二个引号(... [“asp ...),就像之前引用标记的结束标记(...”<%:),是否有任何特殊的方法在代码块中编写特殊字符? Tnx提前

4 个答案:

答案 0 :(得分:1)

我首选的选项是更改HTML(以及#34; ASP.NET Markup")属性引号,因此它变为:

<a href='<%: Request["aspxerrorpath"] %>'>Please try again.</a>

即使这在ASP.NET标记中使用',它也会在页面HTML和"中呈现为<%:..>(它不会编码{{1} }})仍然保证呈现有效&#39; HTML。


如果仍然&#34;不起作用&#34;更改为'引号后,请务必查看返回的实际 HTML。使用原始引号会导致整个页面的解析错误(无论如何在ASP.NET 3.5中) - 并且没有返回任何相关的HTML!

答案 1 :(得分:0)

你可以这样做:

<a href="<%: Request[\"aspxerrorpath\"] %>">Please try again.</a>

在另一个qoute中使用\之前写引号。

答案 2 :(得分:0)

enter image description here

有人提出尝试,并且它有效,所有信用给那个建议它的人,我现在看不到他的评论,Tnx MAN

答案 3 :(得分:0)

这是一个简单的网络表单,展示了两种方法:

* .aspx页面:

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="SimpleTestPage.aspx.cs" Inherits="WebApplication1.SimpleTestPage" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
  <head runat="server">
    <title></title>
  </head>
  <body>
    <form id="form1" runat="server">
      <p>
        Click
        <asp:HyperLink runat="server" ID="GoogleLink">here to get to Google</asp:HyperLink>
        . . .
        or perhaps you'd like to
        <a href="<%=this.AnotherUrl%>">click here to go somewhere else</a>
      </p>
    </form>
  </body>
</html>

它的代码隐藏:

using System;

namespace WebApplication1
{
  public partial class SimpleTestPage : System.Web.UI.Page
  {
    public string AnotherUrl {  get; set; }

    protected void Page_Load( object sender , EventArgs e )
    {
      this.GoogleLink.NavigateUrl = "http://www.google.com/" ;
      this.AnotherUrl = "http://www.leevalley.com/";
    }
  }
}