2017-04-20 8 views
0

Dies kann eine einfache Antwort haben, aber ich konnte keine Antwort finden, indem Sie suchen. Ich verwende Selenium mit Java.Ermitteln auswählen von mehreren auswählen

Ich habe mehrere Elemente (WebElement ele). Ich finde sie mit anderen Mitteln als ihren direkten Tag-Namen, so dass ich nicht einfach den XPath verwenden kann, um die Frage zu beantworten, die ich habe.

Ich habe mehrere mögliche Elementtypen:

<div> 
<input> 
<input type = "checkbox"> 
<select> 
<select multiple> 

ich die meisten von ihnen bestimmen kann. Wenn ich das tue ele.getTagName(). Wenn es ein div ist, werde ich sofort wissen. Wenn es Eingabe ist, kann ich ein ele.getAttribute ("type") und sehen, ob es Kontrollkästchen ist oder nicht. Aber für wählen Sie der Tagname wird mir sowohl für die regulären wählen wählen Sie und die wählen Sie mehrere. Es gibt keinen Attributnamen für das Vielfache. Wie kann ich unterscheiden zwischen Wählen Sie und Wählen Sie mehrere?

Antwort

0

Sie so etwas tun könnte:

//if its a select element 
Select se = new Select(ele); 

Dann konnte man einfache Kontrolle, ob dies ein Multi-select-Element ist durch Ausführen von:

se.isMultiple() 
0

Sie XPath Ausdruck select können mit wählenmultiple Attribut:

//select[@multiple] 

oder selectohnemultiple Attribut:

//select[not(@multiple)] 

Beachten Sie auch, dass auch ohne expliziten Wert von multiple Attribute, Istwert "true", also wenn multiple in select vorhanden Attribut sollte ele.getAttribute("multiple") zurückkehren "true"

Verwandte Themen