0

テキスト ボックスの値を Dojo データ グリッドのクエリ パラメーターとして渡そうとしていますが、以下に挙げる 2 つの質問について明確にしたいと考えています。Dojo グリッドはクエリ パラメータを使用してサーバーへの呼び出しを開始し、検索を開始して結果を返します (データ グリッドに表示されます)。

  1. refresh (dijit.byId("mygrid").refresh を呼び出すことにより、テキストの値に基づいてグリッドをリロードすることは可能ですか?

  2. はいの場合、テキスト ボックスの値をクエリ パラメータとしてデータ グリッドに渡す方法を教えてください。

以下は私の関連コードです

        function reload(){
        dijit.byId("mygrid").refresh;
    }


     <div class="test"> 
            <input id="searchParam" >
            <button dojoType="dijit.form.Button" type="submit" onclick=reload()>
                Search
            </button> 


        </div>

    <div    dojoType="dojox.grid.DataGrid"
                                id="mygrid" 
                                jsid="mygrid"
                                      store="dojox.data.JsonRestStore"
     target="<c:url value='members' />">
                                query="{ 
                                searchCriteria: ? TODO How to pass value of text box here?,

                                }"
                                rowsPerPage="1000"
                                autoWidth="true"

                                autoHeight="true"
                                selectionMode="single"
                                selectable="true"
                                errorMessage="Error loading data"
                                noDataMessage="<span class='dojoxGridNoData'>No members found.</span>">
                </div>
4

1 に答える 1

0

次のようなことができるはずです。

function reload() {
    var val = dojo.byId('searchParam').attr('value');
    dijit.byId("mygrid").setQuery({ propName: val });
}

クエリを適切に作成する必要があります{ propName: val }

于 2012-07-31T12:21:29.530 に答える