//n為記錄總數
<%
for (int i = 0; i < 9; i++) //限制每頁顯示9個圖片
 {
  if (n == 0) break; //如果記錄數為0,退出
  if (i % 3 == 1)  //限制每行顯示3個圖片
      {
 %>
<tr> //如果是第一個圖片加個<tr>標記
<% 
      } 
if (i<n)
{
        DataRow dr2 = Ds2.Tables[0].Rows[i];
        string a = "ReadImage.aspx?ImgID=" + dr2["id"].ToString();
 %>
        <td width="166" height="136" valign="top">
        <table width="166" height="136" border="0" cellpadding="0" cellspacing="0">
        <!--DWLayoutTable-->
        <tr>
        <td height="106" colspan="2" align="center" valign="middle">
        <asp:image   runat="server" width="100" height="100"  imageurl="<%=a%>" /></td>
        </tr>
        <tr>
        <td width="83" align="center" valign="middle" style="height: 30px">                                       view</td>
<td width="83" align="center" valign="middle" style="height: 30px" > download</td>
        </tr>
        </table></td>
                               <% 
     }else
{
///不顯示圖片()
}
if(i%3==0) //控制</tr>一行結束
{
%>
</tr>
<%
}
}
}
%>
結果<%=a%>解釋成htm的時候竟然變成了<td><img src="&lt;%=a%>" style="height:100px;width:100px;border-width:0px;" /></td>
請問是BUG不,能解決嗎?但請專家級高手進來釋疑!!!謝謝,代碼見附件

解决方案 »

  1.   

    你用的是服务器控件
    <body>
        <form id="form1" runat="server">
                    <%Image1.ImageUrl= "ReadImage.aspx?ImgID=sssss"; %>
                    <asp:image ID="Image1"  runat="server"   width="100"   height="100" /> </td> 
        </form>
    </body>
      

  2.   

    这不是它的bug 是你应用的不合规范 既然你显示图片用的是服务器控件 竟然连id属性都没有 还有你没必要先得出a的值 再用那种asp的方式赋给它 在后台处理代码这样写 img.ImageUrl="" //假设id值为 img如果非要以asp的<%%>方式赋值 就用<img  src=<%=a%>>标签就好了
      

  3.   

    使用<img src="<%=a%>">标签,不使用服务器控件。服务器控件在执行的时候认为imageurl的值就是一个字符串。
    要用服务器控件应该写在代码里,事先声明再赋值,再将控件添加到页面。
      

  4.   

    <asp:image       runat="server"   width="100"   height="100"     imageurl=" <%=a%> "
    改成
    <asp:image       runat="server"   width="100"   height="100"  imageurl='ReadImage.aspx?ImgID=<%=  dr2["id"].ToString()%>' />
    一樣解釋不了,但如果是常量就行,且a在運行調試時值是變動的
      

  5.   

    <asp:image       runat="server"   width="100"   height="100"     imageurl=" <%=a%> "   />
    换成
    <img   width="100"   height="100"     src=" <%=a%> "   />
      

  6.   

    <img    src= <%=a%> >
      

  7.   

    不合语法规范, imageurl="   <%=a%>   "  把双引号去掉试试  imageurl=<%=a%>