<% 
                        for (int j = 1; j <= i; j++)
                        {
                    %>
                    <td align="right">
                        <span class="price">
                            <%#DataBinder.Eval(Container.DataItem, "money"+j.ToString())%></span>
                    </td>
                    <%} %>其中 字段是变量,因为 后台sql也是动态生成的
从 money1,money2,money3.....
这样前台如何绑定数据呀

解决方案 »

  1.   

    编译器错误消息: CS0103: 当前上下文中不存在名称“j”
      

  2.   

    这种绑定好像不行,要么你用repeater,gridview来自定义,这样可以用databinder,要么你像你这样方式好像不能用databinder,<%#DataBinder.Eval(Container.DataItem, "money"+j.ToString())%>这边就直接调用cs页面的变量,当然这个变量取自数据库中的数据
      

  3.   

    把j定义到.cs文件中public int j=1;<%  
      for (j = 1; j <= i; j++)
      {
      %>
      <td align="right">
      <span class="price">
      <%#DataBinder.Eval(Container.DataItem, "money"+j.ToString())%></span>
      </td>
      <%} %>
    这样试试
      

  4.   

    把j定义到.cs文件中public int j=1;这个j都是1,没有增加过,不知道为什么
      

  5.   

     前台:
    public int j=0;
      for (j = 1; j <= i; j++)
      {
         写你想循环的那一块代码得到j
      } 
    后台:
     <td align="right">
      <span class="price">
      <%#DataBinder.Eval(Container.DataItem, "money"+<%=j%>)%></span>
      </td>
      

  6.   

    <%#DataBinder.Eval(Container.DataItem, "money"+<%=j%>)%>
    上面语法好像 不通过呀
      

  7.   

    把j定义到.cs文件中public int j=1;<%   
      for (j = 1; j <= i; j++)
      {
      %>
      <td align="right">
      <span class="price">
      <%#DataBinder.Eval(Container.DataItem, "money"+j.ToString())%></span>
      </td>
      <%} %>j都等于1?
    你试试
    <td align="right">
    改成
    <td align="right">(<%=i.ToString()%>)
    这样看看i是否都等于1,如果都等于1那么j当然也都等于1