0

我有一个 onChange 事件,每当我预览它时,它都会不断显示下面的错误。

'对象不支持此属性或方法'

I have the onChange event associated with a picklist and when a specific option is selected another field is unhidden.

代码如下:

负载:

//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() ;

改变

crmForm.SourceEvent() ;

如果有人可以让我知道为什么会出现此错误,那就太好了?

此外,表单预览上的一些 onChange 事件也发生了这种情况,但一旦发布到实时系统上,它就不会出错。有任何想法吗?

谢谢

布雷特

4

2 回答 2

0

覆盖 SourceEvent 不是受支持的方式...

您可能应该使用触发OnChange表单加载中的事件,(if (crmForm.all.yourLookup) { crmForm.all.yourLookup.FireOnChange();}并在字段的javascriptonChange事件中编写类似的内容

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 页面。

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

于 2010-06-03T15:48:55.540 回答
0

这可能意味着具有您期望的“id”值的表单元素实际上并不存在,或者您多次使用了“id”值。

另外:这种访问元素的方式只能在 IE 中使用。也许这就是你想要的,但你可以通过使用使其在其他浏览器中工作document.getElementById()

于 2010-06-03T14:59:25.727 回答