2013-03-12 3 views
2

Как изменить значение combobox с помощью Tchromium Delphi? Версия Tchromimum DCEF3Как изменить значение combobox в Delphi Tchromium?

<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);

+0

В какой версии Chromium вы используете? – TLama

+0

Последняя версия svn/truck – Ulugbek

+0

Я имел в виду больше, если это ['CEF1'] (https://code.google.com/p/delphichromiumembedded/) или [' CEF3'] (https://code.google.com/p/dcef3 /) для Delphi. Не могли бы вы ['edit your question'] (http://stackoverflow.com/posts/15354828/edit) и включить эту информацию в свой вопрос, пожалуйста? – TLama

ответ

0

Там в ExecuteJavascript на нем. Таким образом, вы можете манипулировать всем этим с помощью Javascript.
Если вы хотите изменить это значение combobox, то измените его с помощью DOM.Get его идентификатор, используя «document.getElementById», а затем измените его selectedIndex, обратившись к его выбранномуIndex.
Но это не вызовет событиеChange. Итак, вам нужно вызвать его вручную, используя 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 из него, то делать то, что вы хотите, путем доступа и изменения его свойств

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

+0

Вопрос не совсем ясен. Вы должны быть понятны с вашей проблемой, и то, что вы ищете, должно быть более подробным. –

+0

Я думаю, он просто хочет изменить значение combobox, которое появляется в браузере Chrome. Я ошибаюсь? – Raizal

+0

Вы не ошибаетесь, но вы должны четко изложить свое предположение и дать ответ на это. Если вы можете отредактировать ответ и быть подробным, это будет замечательно –

Смежные вопросы