Как изменить значение комбобокса в Delphi Tchromium?

Как я могу изменить значение combobox, используя Tchromium Delphi? Версия Tchromimum DCEF3

<td class="droplabels" nowrap="nowrap">Лист</td>
<td colspan="3">
   <div class="ui-widget">
      <select id="sheet" name="sheet" style="font-size:0.7em;width:761px;" 
         class="form_select" onchange="showSheet(this.value);">
             <option value="1" selected="selected">Account List </option>
             <option value="2">Merchant list</option>
      </select>
   </div>
</td>

попробуйте это, но не сработало... Chromium1.Browser.MainFrame.ExecuteJavaScript('document.getElementById("sheet").selectedIndex=2;', 'about: blank', 0); Chromium1.Browser.MainFrame.ExecuteJavaScript('document.getElementById("providerField").onchange();', 'about: blank', 0);

1 ответ

На нем есть ExecuteJavascript. Таким образом, вы можете манипулировать всем с этим с помощью Javascript.
Если вы хотите изменить это значение поля со списком, измените его с помощью DOM.Get его идентификатор с помощью "document.getElementById", а затем измените его selectedIndex путем доступа к его selectedIndex.
Но это не вызовет событие onChange. Итак, вам нужно вызвать его вручную, снова используя javascript.

Вот код, чтобы изменить его selectedIndex:

Chromium1.Browser.MainFrame.ExecuteJavaScript('document.getElementById("sheet").selectedIndex='+comboboxIndex+';', 'about: blank', 0);

Чтобы вызвать событие onChange вручную:

Chromium1.Browser.MainFrame.ExecuteJavaScript('document.getElementById("providerField").onchange();', 'about: blank', 0);    

Измените Chromium1 на ваше имя объекта переменной TChromium.

Вот для получения дополнительной информации о Select
http://www.w3schools.com/jsref/dom_obj_select.asp

Если вы ничего не знаете о DOM, прочитайте это здесь
http://www.w3schools.com/htmldom/default.asp Проще говоря, вам просто нужно получить объект DOM, а затем делать то, что вы хотите, открывая и изменяя его свойства.

Извините за мой плохой английский.
отредактированный

Другие вопросы по тегам