Ниже приведена функция JavaScript на веб-странице, по которой я перемещаюсь с помощью элемента управления WebBrowser. У меня есть два списка и кнопка «Добавить» между ними. Я выбираю несколько элементов в левом списке и нажимаю кнопку «Добавить», чтобы эти элементы были скопированы в правый список. Функция javascript, вызываемая кнопкой «Добавить», показана ниже.
ПРОБЛЕМА. Когда я перемещаюсь по странице в элементе управления WebBrowser (версия не имеет значения), я вижу следующую проблему:
selList.options[j].value returns “undefined” .
selList.options[j].text does return the correct text for the OPTION element.
Ожидаемое значение выбранного OPTION должно быть что-то вроде «11187 | 1» (это просто поиск значения свойства HTML-элемента OPTION). Обратите внимание, что selList.options [j] .selected также возвращает действительное значение «истина» или «ложь».
Этого не происходит в IE 6, IE7 или IE8.
Это не происходит в браузере IE 9.
Это происходит только при использовании элемента управления WebBrowser на форме из Excel (VBA) на компьютере с IE9.
Как ни странно, это НЕ происходит при использовании элемента управления webbrowser в приложении .NET и IE9.
Кажется, он ограничен использованием элемента управления из Excel.
/////////////////////////////////////////////// ///
function getSelectionString(selList)
{
var aSelections = new Array();
var listLength = selList.options.length;
//alert("list Length "+listLength);
for(var j=0; j < listLength; j++)
{
if(selList.options[j].selected)
{
var sItem = selList.options[j].value; //sItem returns “undefined” !!!
aSelections.push(sItem);
}
}
return aSelections.join(",");
}
/////////////////////////////////////////////// ////////////////
- ОБРАЗЕЦ тега выбора для списка выбора источника -
<select name=”srcList”>
<option value='44725|1'>1st Auto & Cas Ins Co (44725-P)</option>
<option value='10750|1'>1st Choice Auto Ins Co (10750-P)</option>
<option value='35700|1'>2 10 Home Buyers Warranty of VA (35700-P)</option>
<option value='11187|1'>2-10 Hbw of NV Inc (11187-P)</option>
</select>