3

FilteringSelect と dojox.data.QueryReadStore をストアとして持っています。選択フィルタリングのドロップダウンでリセットすると、サーバーにヒットします。dijit.byId("enquirerOrInstitution").reset();. この背後にある理由は何ですか、どうすればそれを止めることができますか? ComboBox ではなく FilteringSelect を使用する必要があります。以下のようにコードします。

<td>
<div id="accountList" dojoType="dojox.data.QueryReadStore" jsId="accountListStore" 
                    url="<%=contextPath %>/<%=servlet%>?cmd_search_gcs_account_list=1"></div>
            <select id="gcsAccountNumber" name="gcsAccountNumber" dojoType="dijit.form.FilteringSelect"
                style="width: 250px" searchAttr="accountNumber" autoComplete="false" pageSize="10" store="accountListStore"> 
</select>
</td>

JS のどこかでリセットしdijit.byId("gcsAccountNumber").reset();ます。

この動きで、サーバーへの呼び出しが表示されます。

4

1 に答える 1

0

これは簡単な方法です:

dijit.byId('gcsAccountNumber').removeOption(
       dijit.byId('gcsAccountNumber').getOptions()
);

サーバーにリクエストを送信するかどうかをテストします。

存在する場合、DOM 要素の内部の子を削除するルーチンは、公正な結果をもたらすはずです。内容を更新するとリセットされるため、関係が dijit にぶら下がっていることを心配する必要はありません。実際のメモリはストアに保持されます (これも.reset()呼び出しでリセットされます)

while (node.firstChild) node.removeChild(node.firstChild);
于 2013-10-21T10:47:28.320 に答える