2015-06-29 38 views
1

我有我的XPage的extensionLibrary valuePicker控制,我想運行用戶選擇後,一些搜索代碼。我怎樣才能實現這一點。任何onComplete事件?我想忽略在目標領域的「的onchange」事件(用戶可以手動更改它,然後我想開始輸入或搜索按鈕點擊搜索)如何將的onComplete事件添加到的XPages EXTLIB valuePicker控制

 <xe:valuePicker id="valuePicker1" 
      for="TargetField" pickerText="Select" 
      dialogTitle="Select"> 
      <xe:this.dataProvider> 
       <xe:simpleValuePicker labelSeparator="|"> 
        <xe:this.valueList><![CDATA[#{javascript:getMyValues()}]]></xe:this.valueList> 
       </xe:simpleValuePicker> 
      </xe:this.dataProvider> 
     </xe:valuePicker> 

回答

2

從源代碼,它看起來像Value Picker調用XSP.selectValue()傳遞對話框的dojoType來顯示,默認爲extlib.dijit.PickerList。它觸發一個AJAX請求來檢索值,但是隻能通過CSJS打開和關閉對話框。所以沒有像部分刷新這樣的onComplete事件。並且在關閉時添加CSJS以運行沒有當前的鉤子。但是可以擴展該JavaScript文件並觸發它。我不確定在你的用例中,你的編輯框控件需要什麼相應的代碼。

我的優選的方法是使用道場列表文本框以保持選定的值(而不是一個編輯框或其它手動可編輯組件),然後在該目標場使用onChange事件。就我個人而言,我覺得它提供了更好的用戶體驗,不鼓勵手動輸入,並且避免需要驗證用戶輸入的編輯框。

相關問題