2013-10-10 21 views
1

很新的Javascript - 我已經搜索,但只發現部分答案我的問題。客戶關係管理2011 - 選項集上的簡單的Javascript確認框

我在CRM實體上設置了YES/NO選項。當用戶點擊YES時,我想要一個確認提示出現OK/CANCEL確認。這部分工作正常,但我也希望選項設置爲返回到否,如果用戶單擊取消。我無法弄清楚這一部分。

我的代碼在下面 - 請你能指出附加代碼應該去哪裏返回選項設置回NO取消點擊?感謝這麼多的幫助:

function new_submitforapproval_onchange() 
{ 
var approval = confirm("confirm message here"); 
if (approval) 
{ 
    alert("ok message here"); 
} 
else 
{ 
    alert("cancel message here"); 
} 
} 
+3

只需在alert(「cancel message here」)後面設置optionset的值:' –

+0

非常感謝,Xrm.Page.data.entity.attributes.get('new_fieldname')。setValue(null)在那個地方罰款。 – user2867601

回答

2

一個更通用的解決方案可能是以下功能:

function confirmChange(eCxt, promptMessage, okMessage, cancelMessage) { 
    var promptMessage = promptMessage || "This is the default prompt"; 
    var okMessage = okMessage || "ok message here"; 
    var cancelMessage = cancelMessage || "cancel message here"; 
    if (confirm(promptMessage)) { 
     alert(okMessage); 
    } else { 
     alert(cancelMessage); 
     eCxt.getEventSource().setValue(0); // This assumes the field is boolean. 
     //eCxt.getEventSource().setValue(null); // Change the above line to this if applicable to an OptionSet. 
    } 
} 

eCxt被勾選「通過執行上下文作爲第一個參數」傳遞給函數框中的事件處理程序對話框中的是/否字段您正在應用它。

其他3個參數是可選的,可以使用同一事件處理程序對話框的逗號分隔列表字段進行設置。

相關問題