Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# ExtJS表单:链接的组合框_C#_Javascript_Json_Extjs_Coolite - Fatal编程技术网

C# ExtJS表单:链接的组合框

C# ExtJS表单:链接的组合框,c#,javascript,json,extjs,coolite,C#,Javascript,Json,Extjs,Coolite,我有一个页面,上面有很多下拉列表作为过滤器。假设我有一个租金过滤器:类型(公寓、房子等),附近(海洋、山脉、河流、火车、摩天大楼等),城市(纽约、洛杉矶、迈阿密、芝加哥等)。。。 每个过滤器返回post并重新计算其他过滤器。例如,如果选择:靠近山脉,看到迈阿密没有山脉,那么迈阿密和其他城市就不会在城市过滤器中。。。到目前为止 我只是在其他页面中插入此页面作为iFrame。。。但是它真的很丑。 我想要的是使用一些ExtJs对象来帮助我。 有很多网格面板的例子,但没有像这样的。。。请给我一些好的建议

我有一个页面,上面有很多下拉列表作为过滤器。假设我有一个租金过滤器:类型(公寓、房子等),附近(海洋、山脉、河流、火车、摩天大楼等),城市(纽约、洛杉矶、迈阿密、芝加哥等)。。。 每个过滤器返回post并重新计算其他过滤器。例如,如果选择:靠近山脉,看到迈阿密没有山脉,那么迈阿密和其他城市就不会在城市过滤器中。。。到目前为止

我只是在其他页面中插入此页面作为iFrame。。。但是它真的很丑。 我想要的是使用一些ExtJs对象来帮助我。 有很多网格面板的例子,但没有像这样的。。。请给我一些好的建议或例子。谢谢


更多详情:

我从以下几点开始: 或第1版: 这是一个很好的例子。但是,在我将代码移动到它自己的自定义用户控件之后,请求会命中主页的on-Load方法、用户控件以及页面的其他生命周期方法,而不仅仅是CitiesRefresh()方法。。。我不希望出现这种行为,所以我使用代理来代替

但是我没有选择的值,如何发送这些值???可能使用
ExtraParams
,但我不确定

另一件事,是多个下拉列表。所以我想我可以用DDL目标来响应一个项目列表。。。比如:

data.Add(new { Id = id, Name = name, dllTarget= "Cities" });

<Fields>
    <ext:RecordField Name="id" Type="String" Mapping="Id" />
    <ext:RecordField Name="name" Type="String" Mapping="Name" />
    <ext:RecordField Name="ddlTarget" Type="String" Mapping="ddlTarget" />
</Fields>
添加(新的{Id=Id,Name=Name,dllTarget=“Cities”}); 但是怎么读呢???当“城市”设置为DDL目标时,使用DDL目标

<Load Handler="#{Cities}.setValue(#{Cities}.store.getAt(0).get('id'));" /> // doesn't care ddlTarget
//不在乎目标

需要为每个组合框创建一个存储,并为使用Json进行POST调用和检索数据的所有组合框创建一个全局存储。我检索的数据是一组集合值:如下所示:

class dataJson{
    public List<ItemClass> CollectionType {get; set;}
    public List<ItemClass> CollectionNearBy {get; set;}
    public List<ItemClass> CollectionCity {get; set;}
}
classdatajson{
公共列表集合类型{get;set;}
公共列表集合{get;set;}
公共列表集合城市{get;set;}
}
当数据返回时,只需按要求更新组合框的存储:(Load是全局存储的侦听器)



每个组合框应根据
ext:Store
读卡器的属性
Root
过滤数据,例如
近旁组合框存储的
Root
应为
“CollectionAnnear”

此处提供发送参数的信息:
<Load Handler=" #{TypeComboBox}.clearValue(); 
#{TypeComboBox}.loadData(this.reader.jsonData);
#{NearByComboBox}.clearValue(); 
#{NearByComboBox}.loadData(this.reader.jsonData);
#{CityComboBox}.clearValue(); 
#{CityComboBox}.loadData(this.reader.jsonData);" />