Unable to select value from ComboBox

5 posts, 1 answers
  1. Luis
    Luis avatar
    22 posts
    Member since:
    May 2013

    Posted 24 Apr 2015 Link to this post

    Hi,

     

    I can't seem to figure out how can I get TS so select a value from a combobox.

    I've tried to record clicking on the combobox button to open it and then clicking on a value, but this does not execute properly.

    After searching on the forum and found this thread (http://www.telerik.com/forums/how-to-select-from-drop-down-list) I also tried the following code, but this also doesn't work.

    // Enter text 'Audi' in 'Text'
    Pages.LusitaniaSimuladorMotore26.Span.Click();
                
    HtmlSelect marca = ActiveBrowser.Find.ById<HtmlSelect>("marcas");
                        
    marca.SelectByValue("Audi");

     With the above code I can see that the combobox opens, but no value is selected.

    The HTML of the page is

    <div id="marcas_id_div"><select id="marcas" onchange="javascript:ResetTotais(); ResetVersao(); ResetVeiculoInfo(); GetVersoes(false); CarregarVariaveis(0, 0, this.name);" name="marcas" style="width: 270px; display: none;"><option value=""> </option><option value="Abarth">Abarth </option><option value="Alfa Romeo">Alfa Romeo </option><option value="Aston Martin">Aston Martin </option><option value="Audi">Audi </option><option value="Bentley">Bentley </option><option value="Bmw">Bmw </option><option value="Chevrolet">Chevrolet </option></select><span class="ui-combobox"><input class="ui-state-default ui-combobox-input ui-autocomplete-input ui-widget ui-widget-content ui-corner-left" style="padding: 0 5px; height: 22px;" autocomplete="off" role="textbox" aria-autocomplete="list" aria-haspopup="true"><a class="ui-button ui-widget ui-state-default ui-button-icon-only ui-corner-right ui-combobox-toggle" tabindex="-1" title="Mostrar Todos Os Itens" role="button" aria-disabled="false" style=""><span class="ui-button-icon-primary ui-icon ui-icon-triangle-1-s"></span><span class="ui-button-text"></span></a></span></div>

     

    Please help me.

     

    Thanks,

    Luis

  2. Luis
    Luis avatar
    22 posts
    Member since:
    May 2013

    Posted 27 Apr 2015 in reply to Luis Link to this post

    Hi,

     I found the current TS documentation that seemed to be able to solve my problem but it didn't work.

    What I did was

    Element marcasList = ActiveBrowser.Find.ByXPath("/html/body/div[1]/div[1]/form/div[16]/div/div[1]/table/tbody/tr[9]/td/div/span/a");
    HtmlControl btnMarcas = marcasList.As<HtmlControl>();
    btnMarcas.ScrollToVisible();
    btnMarcas.MouseClick();
     
    Element comboInput = ActiveBrowser.Find.ById("marcas");
    ActiveBrowser.Actions.SelectDropDown(comboInput, "Audi", true);

     

    I can see the dropbox is expanded but nothing is selected.

     

    Am I missing something?

     

    BR,

    Luis

     

     

  3. Ivaylo
    Admin
    Ivaylo avatar
    750 posts

    Posted 29 Apr 2015 Link to this post

    Hello Luis,

    The initial code snippet you provided should work like a charm. Here is a short video demonstration (no audio) how this works on my end, using your code.

    In order to investigate further we will need to be able to access your application. Would that be possible?

    Regards,
    Ivaylo
    Telerik
     
    Quickly become an expert in Test Studio, check out our new training sessions!
    Test Studio Trainings
     
  4. Luis
    Luis avatar
    22 posts
    Member since:
    May 2013

    Posted 29 Apr 2015 in reply to Ivaylo Link to this post

    Hi  Ivaylo,

     1st of all thank you for your reply.

    Due to customer constraints, we are not allowed to give access to the application.

     I tried again running my code snippet and still I couldn't see anything being set in the field. I don't if it make a difference, but the element "select" is disabled (in attach I send you a screen of the page HTML).

    One more particularity, is the fact that after this combo, another combo exists to choose the model (based on the choice made in the 1st one). 

     The way I found to interact with this element, is like so

    1.//Select Make.
    2.HtmlControl btnMarcas = ActiveBrowser.Find.ByXPath("/html/body/div[1]/div[1]/form/div[16]/div/div[1]/table/tbody/tr[9]/td/div/span/a").As<HtmlControl>();
    3.btnMarcas.MouseClick();
    4.Manager.Desktop.KeyBoard.TypeText("Audi");
    5.Manager.Desktop.KeyBoard.KeyPress(Keys.Down);
    6.Manager.Desktop.KeyBoard.KeyPress(Keys.Enter);
     

    This way I can open the dropdown, type the value (to filter my choices) and then select the 1st one (and only one) in the drop down.

     

    So to summarize, I manage to overcome my issue, but if you could tell me what could be causing my first approach not to work, that would be great.

     

    BR,

    Luis

  5. Answer
    Ivaylo
    Admin
    Ivaylo avatar
    750 posts

    Posted 01 May 2015 Link to this post

    Hеllo Luis,

    On your question:

    So to summarize, I manage to overcome my issue, but if you could tell me what could be causing my first approach not to work, that would be great.

    I am glad to hear you have managed to overcome this issue. If I knew what is causing your first approach not to work I couldn't ask for access to your application. As you can see from the video provided, the very same approach with your own code is working just fine on my end.

    Regards,
    Ivaylo
    Telerik
     
    Quickly become an expert in Test Studio, check out our new training sessions!
    Test Studio Trainings
     
Back to Top