2015-12-14 27 views
0

我想找到一個頁面上的複選框元素:硒的java不能找到合適的元素

這是頁面的源代碼:

<tr> 
         <td class="tablecell" width="200" valign="top">Filter_list</td> 
         <td class="tablecell" width="360"> 
          <div id="div_filterlist"> 
           <table border="0"> 
            <tr> 
             <td class="tablecell" width="160" valign="top"><b>Available Filters</b><br> 
              <ul id="unselected_ilters" class="unselected_filter"> 

               <li itemID="test"> 
                <input type="checkbox" value="test" onClick="toggleUnselected(this,'test')" onMouseOver="this.style.cursor='hand'"/>&nbsp;&nbsp;&nbsp; 
                <a href="#" onClick="document.filterform.name.value='test';document.filterform.submit();">test</a> 
               </li> 

我的代碼不工作:

String xpathLocater = "//input[ @type=\"checkbox\" and @value=\" test\"]"; 
+0

你的代碼不工作?有什麼異常? – drets

+0

你能夠編輯頁面的HTML嗎? – Swagin9

+0

我得到「無法找到元素:」 – Peter

回答

1

CSS選擇:
String cssLocator = "input[type=checkbox]";
String cssLocator = "input[type=checkbox][value=test]";

XPath的選擇:
String xpathLocator = "//input[@type=\"checkbox\"]";
String xpathLocator = "//input[@type=\"checkbox\" and @value=\"test\"]";

如果你仍然無法找到該元素檢查兩件事情:

  • 裏面是否IFRAME該元素:如果是 - 你需要切換到 iframe首先
  • 在找到元素之前添加等待(您可以嘗試到 查找元素,然後將其添加到DO中M)
+1

不工作字符串xpathLocater =「//輸入[@type = \」複選框\「和@值= \」測試\「]」; – Peter

+0

它應該。你能分享到網頁的鏈接或給更多的HTML片段? – drets

+0

是的。我更新了html頁面 – Peter