Note that there are some explanatory texts on larger screens.

plurals
  1. PODelphi - run javascript in a webbrowser
    text
    copied!<blockquote> <p><strong>Possible Duplicate:</strong><br> <a href="https://stackoverflow.com/questions/3724822/how-to-call-the-onchange-event-of-select-delphi-webbrowser">How to call the OnChange event of &ldquo;Select&rdquo; ? (Delphi - WebBrowser)</a> </p> </blockquote> <p>Hi,</p> <p>I'm loading a web page into a Twebrowser in delphi, the webpage has a form with a drop down. I can get my program to select the item id like in the drop down menu but the select option has a onchange event how can i fire the onchange event in delphi <strong>without using execScript('yourfunctioname()', 'JavaScript');</strong></p> <p>heres the select with the onChnage event</p> <pre><code>&lt;select align="left" id="carrierNameDropDown_UNSHIPPEDITEMS" onChange="MYO.ES.OtherCarrierToggle (this, 'UNSHIPPEDITEMS' )"&gt; &lt;option value="0" selected="1" &gt;Select&lt;/option&gt; &lt;option value="Chronopost" &gt;Chronopost&lt;/option&gt; &lt;option value="City Link" &gt;City Link&lt;/option&gt; &lt;option value="DHL" &gt;DHL&lt;/option&gt; &lt;option value="DPD" &gt;DPD&lt;/option&gt; &lt;option value="Deutsche Post" &gt;Deutsche Post&lt;/option&gt; &lt;option value="Fastway" &gt;Fastway&lt;/option&gt; &lt;option value="FedEx" &gt;FedEx&lt;/option&gt; &lt;option value="GLS" &gt;GLS&lt;/option&gt; &lt;option value="GO!" &gt;GO!&lt;/option&gt; &lt;option value="Hermes Logistik Gruppe" &gt;Hermes Logistik Gruppe&lt;/option&gt; &lt;option value="La Poste" &gt;La Poste&lt;/option&gt; &lt;option value="Parcelforce" &gt;Parcelforce&lt;/option&gt; &lt;option value="Parcelnet" &gt;Parcelnet&lt;/option&gt; &lt;option value="Poste Italiane" &gt;Poste Italiane&lt;/option&gt; &lt;option value="Royal Mail" &gt;Royal Mail&lt;/option&gt; &lt;option value="SDA" &gt;SDA&lt;/option&gt; &lt;option value="Smartmail" &gt;Smartmail&lt;/option&gt; &lt;option value="TNT" &gt;TNT&lt;/option&gt; &lt;option value="Target" &gt;Target&lt;/option&gt; &lt;option value="UPS" &gt;UPS&lt;/option&gt; &lt;option value="Yodel" &gt;Yodel&lt;/option&gt; &lt;option value="Other"&gt; Specify carrier: &lt;/option&gt; &lt;/select&gt; </code></pre> <p>I got it to work by doing:</p> <pre><code>if EmbeddedWB1.Document &lt;&gt; nil then begin if EmbeddedWB1.Document.QueryInterface(IHTMLDocument3,docb) = S_OK then begin elb := docb.getElementById('carrierNameDropDown_UNSHIPPEDITEMS'); if elb &lt;&gt; nil then begin (elb as IHTMLSelectElement).value := 'Parcelforce'; OleVariant (elb as IHTMLElement). FireEvent ('onchange'); end; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload