2010-07-27 4 views
1

셀 내용을 편집하려면 두 번 클릭해야합니다. 그러나 webdriver를 사용하면 API에서 doubleclick 기능을 사용할 수 없습니다. 셀의 내용을 어떻게 바꿀 수 있습니까?Webdriver : 그리드와 상호 작용

답변

1

어떤 그리드에 대해 묻고 있습니까? 대부분의 격자에는 셀 편집을 시작하는 JavaScript 함수가 있습니다.

어쨌든 JavaScript로 더블 클릭을 할 수 있습니다. 하여 element 가정하면 두 배로 싶은에 IWebElement입니다 클릭 :

InternetExplorerDriver의 경우 :

((IJavascriptExecutor)driver).ExecuteScript(
    "arguments[0].fireEvent('ondblclick')", element); 

FirefoxDriver와 'ChromeDriver'의 경우 :

((IJavascriptExecutor) driver).ExecuteScript(
     "var evt = document.createEvent('MouseEvents'); evt.initMouseEvent('dblclick'," + 
     "true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0," + 
     "null); " + 
     "arguments[0].dispatchEvent(evt);", element); 
+0

그리드의 클래스가 " x-grid3 " – Reflux

+0

ExtJS Grid 인 경우 시작될 수있는 startEditing (Number rowIndex, Number colIndex) 메소드가 있습니다. –