2017-03-08 26 views
0

這是更多如何操作。我想通了,並決定分享,因爲我無法在任何地方找到其他的doco。這將遍歷所有必填字段,突出顯示空字段並從已填寫的字段中刪除突出顯示。它會將焦點設置爲它找到的第一個空字段。 注意:只要留下視圖或顯示彈出式對話框,焦點就會丟失,因此任何「直接在此新代碼之後拋出新PlatformRuntimeWarning('blah');」語句都應該被刪除。如何將文本字段設置爲「必需」,然後突出顯示Maximo Anywhere應用程序中的所有文件

處理程序代碼:

define("application/handlers/WhatEverHandler", 
[ … 
"dojo/query", 
"dojo/dom", 
"dojo/dom-style", 
…], 
function(…query, dom, domStyle, …) 
workLog.getRuntimeFieldMetadata('reading').set('required',true); 
workLog.getRuntimeFieldMetadata('reading1’).set('required',true); 
… 
var mainNode = dom.byId("body"); 
var nodes = query(".requiredText", mainNode); 
var firstemptynode = true; 
for (var nodecount = 0; nodecount < nodes.length; nodecount++) { 
    if (nodes[nodecount].value === ""){ 
     domStyle.set(nodes[nodecount], "borderBottom", "10px solid red"); 
     domStyle.set(nodes[nodecount], "background-color", "rgba(240, 147, 153, 0.5」); 
     if (firstemptynode){ 
      nodes[nodecount].focus(); 
      firstemptynode = false; 
     }; 
    }else{ 
     domStyle.set(nodes[nodecount], "borderBottom", ""); 
     domStyle.set(nodes[nodecount], "background-color", ""); 
    }; 
}; 

如果該字段在app.xml中沒有標籤,那麼你不能將其設置爲需要的屬性是未定義相反,你可以在app.xml中的屬性定義的文本項目空的CssClass。你想要求,並在查詢中搜索該類而不是「requiredText」,例如

artif動作/ app.xml中:

<text cssClass="myReqTextBox" editable="true" placeHolder="Please Enter" id="WorkExecution.WorkDetailView_workOrder_groupitem_inst_Install4" resourceAttribute="reading" layoutInsertAt="itemReading1」/> 

公共/ CSS/mdpi.css:

.myReqTextBox { 
} 

然後在代碼中刪除

workLog.getRuntimeFieldMetadata(‘<attribute>').set('required',true); 

線和更新DOM節點查詢

var nodes = query(「.myReqTextBox", mainNode); 

當然如果你想要一個重申一些非動態風格,你可以在這個類中靜態設置它們。

回答

0

這是一個工作解決方案 - 評論/經驗,雖然讚賞。

相關問題