在dijit.form.FilteringSelect中重置在Dojo中点击URL

时间:2013-10-16 09:28:17

标签: javascript dojo

我有FilteringSelect和dojox.data.QueryReadStore作为商店。当我重置选择过滤下拉它击中服务器。 dijit.byId("enquirerOrInstitution").reset();。这背后的原因是什么,我们如何阻止它?我必须使用FilteringSelect而不是ComboBox。代码如下:

<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();中重置某处。

在这个动作中,我看到了对服务器的呼叫。

1 个答案:

答案 0 :(得分:0)

这将是一个简单的出路:

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

测试它是否向您的服务器发送请求。

如果确实如此,删除DOM元素的内部子节点的例程将给出一个公平的结果。不要担心在dijit上挂起关系,因为它会在您更新其内容后重置。实际内存保存在您的商店中(也会尝试使用.reset()调用重置)

while (node.firstChild) node.removeChild(node.firstChild);