Я использую MS CRM 4 в IE8.
В форме «Заказ продукта» я пытаюсь использовать событие OnChanged поля «Количество», чтобы дать некоторую обратную связь пользователю на основе текущего значения поля поиска продукта.
Моя проблема в том, что независимо от того, что я делаю, свойство 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 определенно загружено значение, значение Datavalue по-прежнему возвращает значение null.
Мой JavaScript выглядит правильно, основываясь на примерах, которые я могу найти, и я подтвердил, что crmForm.all.product_d существует и не равен нулю.
Есть мысли по поводу происходящего?