2012-04-03 71 views
1

商機實體的'estimatedvalue'屬性被標記爲必需。我在表單上使用它,但通過表單UI自定義以及使用javascript將其標記爲禁用,但其他一些JavaScript在禁用它之後重新啓用表單。無法禁用CRM 2011在線的必填字段

到目前爲止,我的最佳解決方案是禁用超時回調的屬性:setTimeout("CommonLib.setDisabled('estimatedvalue', true);", 1);。當字段加載時,它加載爲禁用狀態,然後其他一些js啓用該字段,然後從超時回撥運行並再次禁用該字段,以便您看到字段從灰色變爲黑色時變爲灰色。

我還禁用了另外兩個屬性,它們保持禁用狀態,但估計值是唯一實際需要的屬性,所以我猜測它與此有關。

關於什麼是重新啓用該領域的任何想法?

+0

也許,有些內置腳本會在定製腳本執行完畢後觸發(您的腳本)。我想這是這種行爲的唯一解釋。 – Anwar 2012-04-03 06:55:54

+0

我假設一些其他腳本正在運行,我只是無法找到它或跟蹤它... – Daryl 2012-04-03 12:39:44

+0

我試過禁用你指出的領域(機會估計值),它工作正常。我無法'重新啓用'它並且不會在短時間內(約5分鐘)發生。這是使用CRM 2011彙總6. – glosrob 2012-04-03 13:20:21

回答

1

我不認爲它與要求級別有任何關係,但@Anwar可能是一種解釋。你可以仔細檢查一下其他的自定義腳本是否可以啓用該字段?

我只是試圖與在主題爲必填字段任務以下,它似乎是工作的罰款:

Xrm.Page.ui.controls.get(「主體」)setDisabled(真)。

+0

CRM onLoad事件觸發後,必須有一些其他CRM JavaScript正在運行。我嘗試對'estimatedvalue'進行文本搜索,但無法在啓用它的腳本中的任何地方找到它。任何想法如何追蹤腳本啓用它?我的技能不是最好的。 – Daryl 2012-04-03 12:38:01

+0

您可以嘗試調試腳本,並可能能夠找出它在哪裏再次啓用。例如,function disableOnLoad(){debugger; ..... //其餘的代碼}。在IE中打開機會記錄,轉到工具 - > F12開發者工具,並開始腳本調試。刷新對話框,您也可以調試crm腳本。 – Ahmed 2012-04-03 13:21:09

+0

javascript調試將是唯一的方法來真正找出是什麼導致重新啓用,但誰知道需要多久才能通過所有微軟的JavaScript。相反,我選擇按原樣離開我的黑客。謝謝你的幫助。 – Daryl 2012-04-04 17:17:29