Lookup字段的DataValue始终为null

时间:2010-02-12 03:00:58

标签: javascript dynamics-crm lookup dynamics-crm-4

我在IE8中使用MS CRM 4。

在Order Product表单上,我试图使用Quantity字段的OnChanged事件,根据Product lookup字段的当前值向用户提供一些反馈。

我的问题是,无论我做什么,该字段的DataValue属性总是 null。

这是我正在测试的javascript:

if (crmForm.all.productid_d.DataValue == null)
    alert('DataValue is null');
else
{
    alert ('DataValue is non-null');
    alert('Length: ' + crmForm.all.productid_d.DataValue.Length);
}

请注意,我已经检查过crmForm.all.productid_d肯定是非空的,并且它包含我感兴趣的值。从IE8开发者窗口:

<td id="productid_id">
    <table width="100%" class="ms-crm-Lookup" style="table-layout: fixed;" cellSpacing="0" cellPadding="0">
        <tbody>
            <tr>
                <td>
                    <div tabIndex="1011" class="ms-crm-Lookup " style="width: 100%;" ime-mode="auto">
                        <span class="ms-crm-Lookup-Item" contentEditable="false" onclick="openlui()" otypename="product" otype="1024" oid="{DA770EAE-A4FB-DD11-BBD6-001A646872CF}" data="" ?="">
                            <img class="ms-crm-Lookup-Item" alt="" src="/_imgs/ico_16_1024.gif" complete="complete" imageSrc="/_imgs/ico_16_1024.gif"/>
                            Text - Travel Expenses
                            <a tabIndex="-1" title="Travel Expenses" class="atLink" id="at{DA770EAE-A4FB-DD11-BBD6-001A646872CF}" contentEditable="false" onclick="return false;" href="javascript:onclick();" target="_self"/>
                            <b class="IMG_lu_htc_b"/>

在上面的代码中,我有兴趣从Lookup字段中读出“旅行费用”条目。

但是 - 即使Lookup字段中确实加载了一个值,Datavalue仍会返回null。

根据我可以找到的示例,我的JavaScript看起来正确,我已经确认crmForm.all.product_d存在且不为空。

有关正在发生的事情的任何想法?

1 个答案:

答案 0 :(得分:4)

你想要crmForm.all.productid而不是crmForm.all.productid_d。在实际的HTML中,会有一个名为productid_d的字段,即使它可能具有您想要的值,但如果您从crmForm.all集合访问它,只需使用属性名称。