点击后弹出的日期框,鼠标在里面设定并确认,Selenium webdriver无法直接处理。
这里提供了一个JS remove readonly attribute后,setAttribute的办法,实现了对日期控件的操作。
以下为代码部分,核心代码只有一行,非常精简。
package tools;
import objbase.Browser;
import org.openqa.selenium.JavascriptExecutor;
public class TimeBoxSet {//通过NAME定位时间控件后SET时间(2017-12-13)
public static void dateTimeSet(String name,String date){
JavascriptExecutor setDateTime = (JavascriptExecutor) Browser.TestBrowser;
String js="var dateTime=document.getElementsByName('"+name+"')[0];dateTime.removeAttribute('readOnly');dateTime.setAttribute('value','"+date+"');";//通过getElementsByName识别定位控件
setDateTime.executeScript(js);
}
}
网友评论