如何在Strigbuilder类对象中传递参数?

时间:2012-11-20 09:34:46

标签: asp.net

我正在使用

string strurl =“Reports / ReportFilter.aspx”;

并将标记绑定为

AnchorLeftMenuLinks.Append(" href='javascript:OpenDialogue(" + strurl + ");' ");

但它将“未定义对象AuditReports”作为运行时返回错误

href="javascript:OpenDialogue(Reports/ReportFilter.aspx);"

但是当我在firebug中手动添加单引号时

href="javascript:OpenDialogue('Reports/ReportFilter.aspx');"

它工作正常。 任何人都可以建议我如何在code.Yhankx中提前添加单引号。

3 个答案:

答案 0 :(得分:1)

尝试:

var javascript = string.Format("href='javascript:OpenDialouge('{0}');'", strurl);
AnchorLeftMenuLinks.Append(javascript);

或:

AnchorLeftMenuLinks.AppendFormat("href='javascript:OpenDialouge('{0}');'", strurl);

答案 1 :(得分:1)

试试这个

AnchorLeftMenuLinks.Append(" href='javascript:OpenDialogue(\"" + strurl + "\");' ");

答案 2 :(得分:0)

背后的原因是Javascript String,因为在JavaScript中,字符串以单引号或双引号启动和停止。这意味着该字符串被切割为:javascript:OpenDialogue(并且您的函数的语法不正确,因此它无效。

因此,必须在(\)中的每个双引号之前放置一个反斜杠strurl。这会将每个双引号转换为字符串文字。

还需要使用\

放置一些其他特殊字符
  • \' - 单引号
  • \" - 双重报价
  • \\ - BackSlash
  • \n - 新行
  • \t - 标签