我正在尝试通过Javascript清除查找字段的值。我试过这个:
crmForm.all.new_mylookupfield.DataValue = null;
但这不起作用。我检查了查找的DataValue,当它实际上被清除并返回null时。
alert(document.getElementById("new_mylookupfield").DataValue == null); // true
我必须在这里遗漏一些东西......
感谢您的帮助!
更新 我终于开始测试一些建议了。我不确定我最初做错了什么,但这两种方法都可以通过JavaScript清除查找:
crmForm.all.new_mylookupfield.DataValue = null;
crmForm.all.new_mylookupfield.DataValue = [];
答案 0 :(得分:5)
查找控件的DataValue具有特定类型的对象。它是一个对象数组,如下所示:
{
id: /* item id */,
typename: /* entity type name */,
name: /* text to display in link */
}
如果要从查找中删除所有值,可以将其设置为null,但最好将其设置为空数组。
如果您指定了值,但似乎没有更改任何内容,那么您可能没有为该属性键入正确的ID。例如:如果我有一个查找属性为sneakers_brokerid
的实体,那么我需要像这样分配该值:
crmForm.all.sneakers_brokerid.DataValue = [];
答案 1 :(得分:3)
我不记得必须这样做,但您是否尝试将值设置为长度为零的新Array()?