2016-03-19 11 views
3

Ich möchte eine Bookmarklet-Art schreiben, die auf einen Klick ausgeführt wird und die Werte automatisch ausfüllt.Ausgeblendete Felder anzeigen nach Auswahl einer bestimmten Option

Ich bin in der Lage, die Werte durch

document.getElementById('component').value="IAE-Data Agent"; 
document.getElementById('component').onchange(); 

zu wählen, aber es nicht DISPLAYES nicht fields.This versteckt ist der JavaScript-Code geschrieben in Seite nach dieser Auswahlbox, die ich denke, DISPLAYES das Feld nach manuell den Kästchens .

Ich habe versucht, die Funktion auszuführen und viele andere Möglichkeiten noch zeigt es nicht dieses Feld.

Vor dem manuellen Auswahl (wenn das Feld versteckt)

<th class="field_label bz_hidden_field" id="field_label_cf_agents"> 
     <label for="cf_agents"> 
     <a title="A custom Free Text field in this installation of Bugzilla." class="field_help_link" href="page.cgi?id=fields.html#cf_agents">Agent Class Name:</a> 
    </label> 
    </th> 

Nachdem das Feld angezeigt wird:

<th class="field_label" id="field_label_cf_agents"> 
     <label for="cf_agents"> 
     <a title="A custom Free Text field in this installation of Bugzilla." class="field_help_link" href="page.cgi?id=fields.html#cf_agents">Agent Class Name:</a> 
    </label> 
    </th> 

Nur die Klasse atrribute changes.I viele Möglichkeiten ausprobiert, aber immer noch Throught Skript i ma nicht in der Lage, es zu tun.

Wenn ich Selen Skript bin mit

Select dropdown = new Select(driver.findElement(By.id("component"))); 
    dropdown.selectByValue("IAE-Data Agent"); 

Ich kann das versteckte Feld, um zu sehen bekommt displayed.But es nicht möglich ist, weil ich möchte nicht über eine Java-Anwendung ausführen, um die Aufgabe zu tun.

Welche anderen Arten können versucht werden, diese Felder zu zeigen.Wenn JavaScript-Code nicht funktioniert, ist es möglich, Selencode durch Bookmarklet oder eine andere Möglichkeit auszuführen, um es zu tun.

+0

Ich dachte mir einen Weg, unseren Code – Ravi

+0

document.getElementById ('field_label_cf_agents'). ClassName = "field_value"; direkt den Klassennamen ändern – Ravi

+0

Bitte posten Sie eine Antwort und "akzeptieren" Sie, wenn Sie Ihr eigenes Problem gelöst haben - so ist es für zukünftige Generationen offensichtlich. –

Antwort

0

Als das Klassenattribut des Feldes ändert sich nach haben die Option box.I Auswahl direkt verwendet Code

document.getElementById('field_label_cf_agents').className="field_value"; 

dieser Code geändert direkt den Klassennamen Attribut und somit wurde das Feld gezeigt.