dorado前臺控件屬性js技巧

【轉自:http://singlepad.iteye.com/blog/806712

1.前臺取系統時間${Util.getDate("yyyy-MM-dd")}
  設置序列oracle.sequence   OMS_SEQUENCE
  前臺取session的值   ${Session.omsuser.userName}
      取request的值   "${Request.TASK_NO}"

2.Label,TextEditor,Label,Element Renderer等 
FieldLabel的ID爲: formName_fieldlabel_fieldName 
TextEditor以及CheckBox的ID爲: formName_eidtor_fieldName 
Label的ID爲:formName_label_fieldName 
Element Renderer的ID爲:formName_groupName_ElementName_renderer 
FormGroup的id的生成規則是:AutoForm ID_group+index,其中index爲Group的順序,從0開始。 
比如該示例的第二個FormGroup的ID是formEmployee_group1

3.第一個問題,若根據的條件是根據dataset的某一列的值,在DataTable的該Column的onRefresh (column, row, cell, value, record)事件中,根據value的值,來改變column的顏色。 
column.style.color = "red"; 
第二個問題:DataTable有Column有readOnly屬性,Dataset的Field有readOnly屬性,設置這兩個都是可以的。 
取得DataTable有Column:table.getColumn("") 
取得Dataset的Field:dataet.getField(""); 
最後可能需要刷新一下: 
table這麼使用:table.refresh(); 
dataset這麼使用:dataet.refreshControls(); 
row.style.color = "#00000"; 
if(value==9) 

row.style.backgroundColor="#D83A3A"; 
}else 

row.style.backgroundColor="";


return false;

 if(value < 3000){
   row.style.backgroundColor = "red";
 }
 cell.innerHTML = value;
 return false;

4.由於客戶端沒有AutoForm對象,所以無法直接AutoForm對象,不過AutoForm生成的label和texteditor還是有規律可循的。在頁面中: 
FieldLabel的ID爲: formName_fieldlabel_fieldName 
TextEditor以及CheckBox的ID爲: formName_eidtor_fieldName 
Label的ID爲:formName_label_fieldName 
Element Renderer的ID爲:formName_groupName_ElementName_renderer


若要控制AutoForm中組件的數據,則建議操作Dataset對象,而不是具體的組件。一般來說,我們只是控制AutoForm中的組件顯示以及只讀屬性。 
示例代碼如下:

/** 
*控制TextEditor的可見性 
*/ 
formName_eidtor_fieldName.style.display="none"; 
/** 
*控制TextEditor的可讀性 
*/ 
formName_eidtor_fieldName.setReadOnly(true);

若是控制AutoForm中的組件的只讀,建議使用setReadOnly方法,不要直接調用formName_eidtor_fieldName.readOnly=true,因爲dorado對TextEditor進行了一些封裝,所以只設置readOnly屬性是不能達到目的目的。

5.select sequencetable.NextVal from dual ----查詢ORACLE序列

6.關閉tabset的標籤 http://221.130.182.164/bbs/posts/list/2920.page

7.修改表格的樣式
<style>
.DataTable .HeaderGrid  {
 text-align:left;

}
</style>

8.各種subwindow的關閉
requestCommand請求新的頁面   SubWindow.hideParent();
customDropdown請求的         DropDown.closeFrame();
一般的SubWindow請求的        SubWindow.hide();

9./*datasetDropdown的自動匹配功能,
  *應用:在from表單對應字段的textEdit的onKeyDown(editor,evt)中調用
  *      對應dropdown的數據集要配置parameters
  *editor是文本框;dropdown是dropdown下拉框,str是labelfield字段
  */
function autocomplete(editor, dropdown,str) {
  var dataset = dropdown.getDataset();
  var keyCode = window.event.keyCode;
  var oldValue = dataset.parameters().getValue(str);
 
  if ((keyCode >= 48 && keyCode <= 90)||(keyCode >= 96 && keyCode <= 105)
   || keyCode == 8 || keyCode == 32 || keyCode == 40 || keyCode == 46 
   || keyCode == 229) {
   setTimeout(function () {
    var v = editor.value;
    
    if (v != oldValue) {
     dataset.parameters().setValue(str, v+"%");
     dataset.flushData();  
    }
 
    if(!dropdown.isOpened(editor) && keyCode != 13) {
     dropdown.open(editor);
    } 
   }, 0);
  }
 
  return true;
 }

10./*給列表做一個排序號
   *ds目標數據集,index指虛擬的排序號
   *調用方法是在dataset的afterscroll中調用該方法,並給數據添加一個index的虛擬字段
   */
function refreshIndex(ds,index){
   var i=1;
     var record = ds.getFirstRecord();
     while (record) {
       record.setValue(index,i++);
       record = record.getNextRecord();
     }
}

發佈了319 篇原創文章 · 獲贊 18 · 訪問量 71萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章