Extjs 为什么我不能使用filterhead使用复选框和单选按钮列?
我还有一个问题,当我只使用两列(一列用于名称,另一列用于复选框,或一列用于名称,另一列用于radiobutton)时,一切都很好,但当我使用三列(一列用于名称,另一列用于复选框,最后一列用于radiobutton)时当我尝试在过滤器字段中写入时,控制台中出现了下一个错误 filterheader.js:46未捕获类型错误:field.getValue不是函数Extjs 为什么我不能使用filterhead使用复选框和单选按钮列?,extjs,ext.net,Extjs,Ext.net,我还有一个问题,当我只使用两列(一列用于名称,另一列用于复选框,或一列用于名称,另一列用于radiobutton)时,一切都很好,但当我使用三列(一列用于名称,另一列用于复选框,最后一列用于radiobutton)时当我尝试在过滤器字段中写入时,控制台中出现了下一个错误 filterheader.js:46未捕获类型错误:field.getValue不是函数 at g.<anonymous> (filterheader.js:46) at Object.each (ext-all.j
at g.<anonymous> (filterheader.js:46)
at Object.each (ext-all.js:19)
at g.runFiltering (filterheader.js:46)
at g.onFieldChange (filterheader.js:45)
at ext-all.js:19
在g。(filterheader.js:46)
在Object.each(ext all.js:19)
在g.runFiltering(filterheader.js:46)
在g.onFieldChange(filterheader.js:45)
在ext all.js:19
我不知道该怎么办,我在ext.net上没有太多的练习。之前
为我的英语道歉。我真的很感谢你的帮助
<ext:GridPanel ID="grdNames" runat="server" Title="Names" HideCollapseTool="false" UI="Primary" HideHeaders="false" Layout="FitLayout" ColumnLines="false" BodyStyle="GridFiltros" Border="false" Region="Center" Frame="false" ForceFit="true" AutoScroll="false" Resizable="false">
<Store>
<ext:Store ID="strOrigen" runat="server">
<Model>
<ext:Model ID="Model25" runat="server">
<Fields>
<ext:ModelField Name="CheckNames" Type="Boolean" DefaultValue="false" />
<ext:ModelField Name="Names" />
</Fields>
</ext:Model>
</Store>
<View>
<ext:GridView ID="GridView6" runat="server" TrackOver="true" StripeRows="true" />
</View>
<ColumnModel ID="ColumnModel15" runat="server">
<Columns>
<ext:ComponentColumn ID="radColumn" runat="server" Width="30" DataIndex="CheckNames" Align="Left">
<Component>
<ext:Radio ID="rdGo" runat="server" Name="vGO">
</ext:Radio>
</Component>
</ext:ComponentColumn>
<ext:CheckColumn ID="CheckColumn" runat="server" DataIndex="CheckNames" Sortable="false" HideTitleEl="true" Width="35"
Resizable="false" StopSelection="false" Editable="true" Filterable="false" Align="Left"
Groupable="false" MenuDisabled="true">
<Items>
<ext:Checkbox runat="server" ID="chkRptGeoO" Checked="false">
<Listeners>
<Change Fn="chkChangeRptGeoO"></Change>
</Listeners>
</ext:Checkbox>
</Items>
</ext:CheckColumn>
<ext:Column ID="NamesColumn" runat="server" HideTitleEl="true" DataIndex="Names" MenuDisabled="true" Width="200" TabMenuHidden="true" />
</Columns>
</ColumnModel>
<Plugins>
<ext:FilterHeader ID="grdNames" runat="server" OnCreateFilterableField="OnCreateFilterableField">
</ext:FilterHeader>
</Plugins>
</ext:GridPanel>
我试图重现您的代码,但无法重现问题。也许你需要升级你的Ext.NET版本 检查这是否对您有效,我尝试使用您提供的代码片段复制您的场景,但可能跳过了什么
<%@ Page Language="C#" %>
<!DOCTYPE html>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!X.IsAjaxRequest)
{
strOrigen.Data = new List<object>()
{
new { CheckNames = false, Names = "Name 1" },
new { CheckNames = false, Names = "Name 2" },
new { CheckNames = true, Names = "Name 3" },
new { CheckNames = false, Names = "Name 4" }
};
strOrigen.DataBind();
}
}
</script>
<html>
<head runat="server">
<title></title>
</head>
<body>
<form runat="server" id="fm1">
<div>
<ext:ResourceManager runat="server" />
<ext:GridPanel ID="grdNames" runat="server" Title="Names">
<Store>
<ext:Store ID="strOrigen" runat="server">
<Model>
<ext:Model ID="Model25" runat="server">
<Fields>
<ext:ModelField Name="CheckNames" Type="Boolean" DefaultValue="false" />
<ext:ModelField Name="Names" />
</Fields>
</ext:Model>
</Model>
</ext:Store>
</Store>
<View>
<ext:GridView ID="GridView6" runat="server" TrackOver="true" StripeRows="true" />
</View>
<ColumnModel ID="ColumnModel15" runat="server">
<Columns>
<ext:ComponentColumn ID="radColumn" Text="radCol" runat="server" Width="30" DataIndex="CheckNames">
<Component>
<ext:Radio ID="rdGo" runat="server" Name="vGO">
</ext:Radio>
</Component>
</ext:ComponentColumn>
<ext:CheckColumn ID="CheckColumn" runat="server" Text="chkCol" Editable="false" Filterable="false" DataIndex="CheckNames" Width="35" MenuDisabled="true">
<Items>
<ext:Checkbox runat="server" ID="chkRptGeoO" Checked="false">
</ext:Checkbox>
</Items>
</ext:CheckColumn>
<ext:Column ID="NamesColumn" runat="server" Text="names" DataIndex="Names" Width="200" />
</Columns>
</ColumnModel>
<Plugins>
<ext:FilterHeader ID="FilterHeader1" runat="server">
</ext:FilterHeader>
</Plugins>
</ext:GridPanel>
</div>
</form>
</body>
</html>
受保护的无效页面加载(对象发送方、事件参数e)
{
如果(!X.IsAjaxRequest)
{
strOrigen.Data=新列表()
{
新建{CheckNames=false,Names=“Name 1”},
新建{CheckNames=false,Names=“Name 2”},
新建{CheckNames=true,Names=“Name 3”},
新建{CheckNames=false,Names=“Name 4”}
};
strOrigen.DataBind();
}
}
在此处使用Ext.NET 4.2.1