日期:2014-05-16  浏览次数:20986 次

ASP.NET中 “字符文本中字符太多”错误及解决方法

   我的错误截图


   问题描述 

   在ASP.NET中使用多层引号,要引起注意,引号使用不当会引起“字符文本中字段太多”编译错误!今天我就遇到了这个错误,整理于此!
    “字符文本中字段太多”错误提示过于笼统,其实,错误原因很简单,看一下错误源码形式:
"<%=Session['UserName']%>"
    正确形式应当为:
 '<%=Session["UserName"]%>'


   问题起因:HTML中引号多层嵌套问题

      html中的超链接中比如有多层嵌套,很容易产生导致字符串被截取,字符文本中字符太多,等等等等很多问题

    引号嵌套两层时,可以使用转义或者单双引号交替的形式实现,需要注意单双引号位置;当引号嵌套达到三四层的时候,问题就出现了,     

    怎么解决呢?

    举个例子:"javascript:fnabc('nihao("123")')"

     html的href=以上的字符串

     那么即使加了转义字符,以上的字符串还是会被截取为"javascript:fnabc('nihao("

     解决的方法是使用 &quot; 代替引号