我在VS的HTML编辑状态下写了这样的代码,运行成功了,但是,切换到设计状态就提示未能在“设计”视图中打开。在“<%..."值"...%>”块中,以不同方式将值括起来。怎么处理呢? <ItemTemplate>
<a href="javascript:topinsert('<%# DataBinder.Eval(Container, "DataItem.DisplayName") %>','<%# DataBinder.Eval(Container, "DataItem.FilePath") %>','<%# DataBinder.Eval(Container, "DataItem.MultiMediaext") %>')"><%# DataBinder.Eval(Container, "DataItem.DisplayName") %></a>
</ItemTemplate>

解决方案 »

  1.   

    VS.net就是这个样,当你“<%..."值"...%>”这种东西多了,就会这样,要看页面还是用DW吧
      

  2.   

    用HTML的注释<!----> 把<%#%>先注释一下呀,要运行的时候再去掉
      

  3.   

    vs 里编辑界面真TMD不方便,连个标签选择都没有,当选择了表格,然后切换到HTML 被选择的部分也不冲突显示一下,如果能像DW那样编辑代码就好了各
      

  4.   

    具体原因不清楚,不过把<%..."值"...%>里的值删了就可以查看到设计视图了
      

  5.   

    鄙视VS的视图设计功能,垃圾!!!!!对于俺们做WEB的真是老火
      

  6.   

    的确,vs会自己加上一些垃圾代码,什么<font 宋体>一大堆的,看了就烦。
    将' 全部改成 ""试试
      

  7.   

    习惯了还好,,改为<%..."值"...%>就可以查看到设计视图了
      

  8.   

    改为这样
    <a href='javascript:topinsert(<%# DataBinder.Eval(Container, "DataItem.DisplayName") %>,<%# DataBinder.Eval(Container, "DataItem.FilePath") %>,<%# DataBinder.Eval(Container, "DataItem.MultiMediaext") %>)'><%# DataBinder.Eval(Container, "DataItem.DisplayName") %></a>
      

  9.   

    不要被它们搞晕了头:
    Asp.Net中几种相似的标记符号: <%=...%> <%#... %> <% %> <%@ %> 解释及用法   答:  <%#... %>: 是在绑定控件DataBind()方法执行时被执行,用于数据绑定
              如: <%# Container.DataItem("tit") %>
            <%= %>: 在程序执行时被调用,可以显示后台变量值
              如:   
               *.aspx中: <%= aaa %>
               *.cs中:   protected string aaa="姓名";
            <% %>: 内联代码块里面可以在页面文件*.aspx或*.ascx文件里面嵌入后台代码
              如:
                <% 
                 for(int i=0;i<100;i++)
                 {
                       Reaponse.Write(i.ToString());
                 }
                %>
            <%@  %>是在*.aspx页面前台代码导入命名空间,
               如:  
                <%@ Import namespace="System.Data"%>
      

  10.   

    topinsert 函数需要的是3个字符串,这样参数类型不正确
      

  11.   

    靠最后这样 一段一段的拼凑起来的,基本上可以了
    <%="<a href=javascript:topinsert('"%><%# DataBinder.Eval(Container, "DataItem.DisplayName") %><%="','"%><%# DataBinder.Eval(Container, "DataItem.FilePath") %><%="','"%><%# DataBinder.Eval(Container, "DataItem.MultiMediaext") %><%="')>"%><%# DataBinder.Eval(Container, "DataItem.DisplayName") %><%="</a>"%>
      

  12.   

    <a href='javascript:topinsert("<%# DataBinder.Eval(Container, "DataItem.DisplayName") %>","<%# DataBinder.Eval(Container, "DataItem.FilePath") %>","<%# DataBinder.Eval(Container, "DataItem.MultiMediaext") %>")'><%# DataBinder.Eval(Container, "DataItem.DisplayName") %></a>
      

  13.   

    提醒,像我这样解决的朋友,注意要关闭代码自动重排功能,否则
    代码被重排的很工整
    <%="<a href=javascript:topinsert('"%>
    <# DataBinder.Eval(Container, "DataItem.DisplayName") %>
    <%="','"%>
    <%# DataBinder.Eval(Container, "DataItem.FilePath") %>
    <%="','"%>
    <%# DataBinder.Eval(Container, "DataItem.MultiMediaext") %>
    <%="')>"%>
    <%# DataBinder.Eval(Container, "DataItem.DisplayName") %>
    <%="</a>"%>
    也就是说本来自这几句都是在一行的,重排后每一句都加了换行,最后形成HTML就显示不出来。
      

  14.   

    '<%="<a href=javascript:topinsert('"%>'
    在尖括号外面加'就可以了
    我以前也这样的