我正在第一次使用XPages querysaved文件事件,並試圖阻止XPage被保存。我試過XPages - querysaved文件事件
return false;
但這並不能阻止文件被保存。什麼是停止保存XPage的正確語法?
節省了文檔中的代碼是:
<xp:this.action>
<xp:saveDocument var="document1"></xp:saveDocument>
</xp:this.action>
這是相同的,如下面克努特的答案。我有在querySaveDocument的代碼是
var choice:boolean = false;
for (var k = 1; k < 7; k++) {
choice = false;
sectionname = "C1B"+k;
for (var n = 1; n < 7; n++) {
fieldname = "C1B"+k+"_R"+n;
if (getComponent(fieldname).getValue() != ""){
choice = true;
break;};
}
if (choice == false){
viewScope.put("EmptyRadioField",sectionname);
var comp = getComponent("RadioButtonValidationDialog");
comp.show();
return false;
}
}
中所示的對話框時正確選擇== false,但XPage上仍然是保存。
我已經通過驗證移動到csjs解決我的問題:
for (var k = 1; k < 7; k++) {
choice = false;
sectionname = "C1B"+k;
for (var n = 1; n < 7; n++) {
fieldname = "C1B"+k+"_R"+n;
var id = "view:_id1:_id2:_id3:"+fieldname;
fieldvalue = dijit.byId(id).getValue();
if (fieldvalue != false){
choice = true;
break;};
}
if (choice == false){
sectionid = "view:_id1:_id2:_id3:lbl"+sectionname;
sectionvalue = dojo.byId(sectionid).innerHTML;
alert("Please enter a value for " + sectionvalue);
return false;
}
}
這個,效果很好,儘管很多的努力我只是無法得到它的工作SSJS。
所以,你正在尋找的XPages相當於'繼續用LotusScript = FALSE'? – Naveen
是的,這就是我想要的 –
你是否有意將'}'放入'break'行? - 我猜,最後如果應該是**兩個'for'循環的**內部? –