<asp:TemplateColumn HeaderText="确认发料" >
<ItemTemplate>
<a runat=server onserverclick="MaterialAffirm('<%#DataBinder.Eval(Container, "DataItem.id").ToString()%>')"  >
选择</a>
</ItemTemplate>
</asp:TemplateColumn>其中的onserverclick="MaterialAffirm('<%#DataBinder.Eval(Container, "DataItem.id").ToString()%>')" 该怎么写,就是在数据捆定时单引和双引位置问题 MaterialAffirm为后台函数

解决方案 »

  1.   

    onserverclick=MaterialAffirm('<%#DataBinder.Eval(Container.DataItem, "id").ToString()%>')
      

  2.   

    <asp:TemplateColumn HeaderText="确认发料" >
    <ItemTemplate>
    <a runat=server onserverclick=MaterialAffirm('<%#DataBinder.Eval(Container, "DataItem.id").ToString()%>') >
    选择</a>
    </ItemTemplate>
    </asp:TemplateColumn>
      

  3.   

    不行啊,提示错误分析器错误信息: 服务器标记的格式不正确。源错误: 
    行 95:  <asp:TemplateColumn HeaderText="确认发料" ItemStyle-Width="100">
    行 96:  <ItemTemplate>
    行 97:  <a runat=server  onclick ="return confirm('你将确认该工程的追加材料申请,改操作不可撤销,确定要执行吗?')"  onserverclick=MaterialAffirm('<%#DataBinder.Eval(Container, 'DataItem.id').ToString()%>')  style="CURSOR: hand">
    行 98:  选择</a>
    行 99:  </ItemTemplate>
     
      

  4.   

    onserverclick=MaterialAffirm('<%#DataBinder.Eval(Container, "DataItem.id").ToString()%>')还是不行
      

  5.   

    <ItemTemplate>
    <a runat="server" onserverclick="MaterialAffirm" ID="A1" s='<%#DataBinder.Eval(Container, "DataItem.id").ToString()%>'>link</a>
    </ItemTemplate>protected void MaterialAffirm(object sender,EventArgs e)
    {
    System.Web.UI .HtmlControls .HtmlAnchor link=(System.Web.UI .HtmlControls .HtmlAnchor)(sender);
    string id=link.Attributes ["s"].ToString();
    }
      

  6.   

    多谢楼上的
    看上去好像可以,没试过因为牵扯到datagrid多行,楼上的方法还得遍历每行,比较麻烦能不能直接处理啊继续求教中