2010-06-03 95 views
0

我有一個onChange事件,每當我預覽它時,都會引發錯誤。MS Dynamics CRM 4.0 - onChange事件錯誤

「對象犯規支持此屬性或方法」

我有一個選擇列表相關聯的onChange事件並且選擇特定選項當其他字段被取消隱藏。

的代碼如下:

的onLoad:

//If How did you hear about us is set to event show the Source Event lookup 
crmForm.SourceEvent = function SourceEvent() 
{ 
if (crmForm.all.gcs_howdidyouhearaboutus.DataValue == 5) 
{ 
crmForm.all.gcs_sourceeventid_c.style.display = '' ; 
crmForm.all.gcs_sourceeventid_d.style.display = '' ; 
} 
else 
{ 
crmForm.all.gcs_sourceeventid_c.style.display = 'none' ; 
crmForm.all.gcs_sourceeventid_d.style.display = 'none' ; 
} 
} 
crmForm.SourceEvent() ; 

的onChange

crmForm.SourceEvent() ; 

將是巨大的,如果有人可以讓我知道爲什麼這個錯誤被顯示出來?

此外,這發生在窗體預覽上的一些onChange事件,但一旦發佈到實時系統上,它不會出錯。有任何想法嗎?

謝謝

佈雷特

+0

當你「預覽」它時,你的意思是什麼? – Matt 2010-06-03 15:14:55

回答

0

重載sourceEvent的是不是這樣做的受支持的方法...

你或許應該用火OnChange事件中使用(if (crmForm.all.yourLookup) { crmForm.all.yourLookup.FireOnChange();}形式加載並在現場的javascript onChange事件寫類似

var displayStyle = (crmForm.all.cf_picklist.DataValue == "3") ? "none" : ""; 
crmForm.all.cf_lookupid_d.style.display = displayStyle; 
crmForm.all.cf_lookupid_c.style.display = displayStyle; 

注意,更改顯示CSS元素是不支持,但它是這樣做的唯一途徑,而無需編寫自己的ASPX頁面。

ref:http://www.eggheadcafe.com/software/aspnet/31267662/hide-lookup-based-on-pick.aspx

0

這可能意味着你希望做「ID」的值或者表單元素實際上並不存在,你已經使用的「ID」值更比一次。

另外:這種訪問元素的方式只能在IE中使用。也許這就是你想要的,但你可以通過使用使其在其他瀏覽器document.getElementById()

+0

MSCRM只支持IE ...所以這不應該是一個問題。 – BeardinaSuit 2010-06-03 15:43:03