2012-10-12 52 views
0

我正在使用Ext.Net我有一個窗體,我剛剛更改爲一個MultiCombo組合框。從Ext.NEt通過JS獲取從MultiCombo中選擇的值

此前,我使用「SelectEnquiry.getValues()」檢索選定的項目,並將其傳遞到與Button Direct事件一起使用的參數中。

如何在使用MultiCombo時獲得選定的值?

組合框位

<ext:MultiCombo runat="server" ID="SelectEnquiry" FieldLabel="Enquiry" AnchorHorizontal="95%" Editable="false" ValueField="Id" DisplayField="ProviderName" TypeAhead="true" Mode="Local" ForceSelection="true" TriggerAction="All" EmptyText="Select Enquiry" ValueNotFoundText="Select Enquiry" ItemSelector="div.list-item" SelectOnFocus="true" AllowBlank="false"> 

按鈕提交表單位

<ext:Button runat="server" ID="ButtonEmailTaskAccept" Text="OK"> 
     <Listeners> 
      <Click Handler="if (PanelUnlinked.isVisible() && !$form.validate([SelectProject, SelectEnquiry])) return false;"> 
      </Click> 
     </Listeners> 
     <DirectEvents> 
      <Click Url='<%# Url.Action("CompleteEmailTask") %>' AutoDataBind="true" 
      Success="window.$messageBus.publish('task-admin', 'inbox-changed'); 
      window.$messageBus.publish('task-admin', 'task-changed'); 
      WindowAssignEmail.close()" Failure="$shell.requestFailedHandler(response, null)" 
       Json="true"> 
       <EventMask ShowMask="true"></EventMask> 
       <ExtraParams> 
        <ext:Parameter Name="emailResponseId" Value="<%# Model.EmailResponse.Id %>" Mode="Value" 
         AutoDataBind="true" /> 
        <ext:Parameter Name="enquiryId" Value="SelectEnquiry.getValues()" Mode="Raw" /> 
        <ext:Parameter Name="documentList" Value="buildSelectionList()" Mode="Raw" /> 
       </ExtraParams> 
      </Click> 
     </DirectEvents> 
    </ext:Button> 

回答

0

問題似乎是它無法找到我試圖從中獲取價值的控件。

於是設法通過做來解決它:

#{SelectEnquiry}.getSelectedValues() 
+0

爲什麼這標誌着下來?這是解決問題的辦法。當然,這是我的解決方案,但是,我還指出它如何解決問題? – DazManCat

0

隨着<ext:MultiCombo>,你可以叫.getValue()返回所選值的數組。我會考慮加入.getValues(),所以它與<ext:ComboBox> api一致。

編輯

看樣子ComboBox沒有一個客戶端.getValues()功能,所以我們不會被添加到MultiCombo。只需使用.getValue()即可在所有表單字段中進行標準化。

相關問題