Telerik:从FilterTemplate获取列名称控制客户端事件

时间:2015-09-18 11:08:30

标签: telerik radgrid

我正在尝试将RadCombobox添加到telerik:GridTemplateColumn作为FilterTemplate控件。我有多个列,并且所有列都具有相同滤波器值的RadCombobox。

<telerik:GridTemplateColumn AutoPostBackOnFilter="true" HeaderStyle-Width="90px"
                            UniqueName="Date1" HeaderText="Date1" DataField="Day1">
                            <FilterTemplate>
                                <telerik:RadComboBox ID="RadComboBoxDate1" Height="90px" AppendDataBoundItems="true"
                                    Width="105px" runat="server" OnClientSelectedIndexChanged="Date1IndexChanged">
                                </telerik:RadComboBox>
                                <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
                                    <script type="text/javascript">
                                        function Date1IndexChanged(sender, args) {
                                            var tableView = $find("<%# TryCast(Container,GridItem).OwnerTableView.ClientID %>");
                                            var selectedValue = sender.get_value();
                                            if (selectedValue) {
                                                if (parseInt(selectedValue) < 0) {
      tableView.filter("Date1", selectedValue, "NoFilter");
                                                }
                                                else {                                                 tableView.filter("Date1", selectedValue, "EqualTo");
                                                }
                                            }
                                        }
                                    </script>
                                </telerik:RadScriptBlock>
                            </FilterTemplate>
                            <ItemTemplate>
                                <asp:Label runat="server" ID="lblday1"></asp:Label>
                                <asp:HiddenField ID="hdDay1" runat="server" Value='<%# DataBinder.Eval(Container.DataItem,"Day1") %>' Visible="false" />
                            </ItemTemplate>
                        </telerik:GridTemplateColumn> 

我有7个这样的列,我想使用一个RadCodeBlock来处理过滤器。有没有更好的方法来做到这一点?

1 个答案:

答案 0 :(得分:0)