0

フィルターとしてドロップダウンがたくさんあるページがあります。タイプ(アパート、家など)、近く(海、山、川、電車、高層ビルなど)、都市(ニューヨーク、ロサンゼルス、マイアミ、シカゴなど)の家賃フィルターがあるとします。 ..) etc... そして、各フィルターはポストバックを行い、他のフィルターを再計算します。たとえば、次のように選択した場合: 山の近くにあり、マイアミには山がないため、マイアミや他の都市は都市フィルターに含まれません...これまでのところ...

このページをiFrameとして他のページに挿入しただけですが...本当に醜いです。このExtJsオブジェクトのいくつかを使用して、それを支援したいと思っています。グリッドパネルの例はたくさんありますが、このようなものはありません...アドバイスや例を教えてください。ありがとう。


詳細:

最初に何かを見つけました: http://examples.ext.net/#/Form/ComboBox/Ajax_Linked_Combos/ またはバージョン 1: http://examples1.ext.net/#/Form/ComboBox/Ajax_Linked_Combos/ これは良い例え。しかし、コードを独自のカスタム ユーザー コントロールに移動した後、要求は、メソッド CitiesRefresh() だけでなく、メイン ページの on-Load メソッド、ユーザー コントロール、およびページの他のライフサイクル メソッドにヒットしました。 ..私はその動作を望まないので、代わりにプロキシを使用し<ext:HttpProxy Url="mypage.aspx" Method="POST" />ます...

しかし、選択した値がありません。それらを送信するにはどうすればよいですか??? 使ってExtraParamsいるかもしれませんが、よくわかりません。

もう1つは、複数のドロップダウンです。だから私はddltargetでアイテムのリストに応答できると思います...のように:

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>

しかし、それをどのように読むのですか?"Cities" が設定されているときに ddlTarget を使用します。????

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

1 に答える 1

0

コンボボックスごとにストアを作成し、Json を使用して POST 呼び出しを行い、データを取得するすべてのグローバル ストアを作成する必要があります。私が取得するデータは、次のようなコレクション値のグループです。

class dataJson{
    public List<ItemClass> CollectionType {get; set;}
    public List<ItemClass> CollectionNearBy {get; set;}
    public List<ItemClass> CollectionCity {get; set;}
}

データが戻ってきたら、必要に応じてコンボボックスのストアを更新するだけです: (Load はグローバルストアのリスナーです)

<Load Handler=" #{TypeComboBox}.clearValue(); 
#{TypeComboBox}.loadData(this.reader.jsonData);
#{NearByComboBox}.clearValue(); 
#{NearByComboBox}.loadData(this.reader.jsonData);
#{CityComboBox}.clearValue(); 
#{CityComboBox}.loadData(this.reader.jsonData);" />

各 ComboBox は、 >のプロパティRootでデータをフィルタリングする必要があります。たとえば、の は次のようになります。ext:StoreReaderRootNearByComboBox store"CollectionNearBy"

于 2012-05-03T15:07:35.067 に答える