请问如何在脚本中获得后台的返回的字符串
<asp:BoundColumn HeaderText='<%=GetColumnTitle("Lot")%>'DataField="Lot"></asp:BoundColumn>
GetColumnTitle是后台的一个函数,返回字符串然后赋值给headertext属性。boundcolumn是在templatecolumn中动态生成的。
下面是这个函数
 If Title = "Lot" Then
            GetColumnTitle = "lot" 
        End If        If Title = "Gross" Then
            GetColumnTitle = "lot"
        End If        If Title = "Net" Then
            GetColumnTitle = "lot" 
        End If        If Title = "Tax" Then
            GetColumnTitle = "lot" 
        Else
            GetColumnTitle = "None"
        End If
为什么这个函数在脚本里得不到任何返回的字符串。

解决方案 »

  1.   

    <asp:BoundColumn HeaderText='<%# GetColumnTitle("Lot") %>' DataField="Lot"></asp:BoundColumn>
      

  2.   

    用绑定<%# GetColumnTitle("Lot") %>
      

  3.   

    <asp:BoundColumn HeaderText='<%# GetColumnTitle(DataBinder.Eval(Container.DataItem,"Lot")) %>' DataField="Lot"></asp:BoundColumn>
      

  4.   

    public string GetColumnTitle(string Title)
    {
    If Title = "Lot" Then
                return "lot" 
            End If        If Title = "Gross" Then
                return = "lot"
            End If
            ...
    }<asp:BoundColumn HeaderText='<%# GetColumnTitle("Lot") %>' DataField="Lot"></asp:BoundColumn>
      

  5.   

    使用绑定<%# GetColumnTitle("Lot")%>,不使用<%=GetColumnTitle("Lot")%>
      

  6.   

    <%=GetColumnTitle("Lot")
    改成
    <%# GetColumnTitle("Lot")%>
    另外GetColumnTitle()要用protected或public定义,不要用private
      

  7.   

    前台:
    <asp:BoundColumn HeaderText='<%# GetColumnTitle(DataBinder.Eval(Container.DataItem,"Lot")) %>' DataField="Lot"></asp:BoundColumn>后台:
    Protected Function GetColumnTitle(ByVal Title As String) As String
            If Title = "Lot" Then
                GetColumnTitle = "lot" 
            End If        If Title = "Gross" Then
                GetColumnTitle = "lot"
            End If        If Title = "Net" Then
                GetColumnTitle = "lot" 
            End If        If Title = "Tax" Then
                GetColumnTitle = "lot" 
            Else
                GetColumnTitle = "None"
            End If
    End Function
      

  8.   

    都不中
    Compiler Error Message: BC30676: 'DataBinding' is not an event of 'System.Web.UI.WebControls.BoundColumn'.
      

  9.   

    绑定错误.应该<%=%>就行的.只要定义的是public,或protected就行的
      

  10.   

    原因可能是你的BoundColumn是动态生成的.BoundColumn一旦生成,页面就已经发送到客户端,就不会再调用GetColumnTitle了,
    你最好在生成BoundColumn时,就把数据直接写上去.
      

  11.   

    把后台函数运行的结果赋值给一个隐藏的TextBox,客户端取TextBox的value试试看。
      

  12.   

    <asp:BoundColumn HeaderText='<%# GetColumnTitle("Lot") %>' DataField="Lot"></asp:BoundColumn>
    方法要是public的
      

  13.   

    同意 anmeier(三人行) 的观点
      

  14.   

    推荐一个方法:
    在datagrid的dataitembound事件中,调用你后端的函数,更改headertext属性。