Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用selenium webdriverjs将sendkeys函数与承诺链接一起使用?_Javascript_Selenium_Promise_Webdriverjs - Fatal编程技术网

Javascript 如何使用selenium webdriverjs将sendkeys函数与承诺链接一起使用?

Javascript 如何使用selenium webdriverjs将sendkeys函数与承诺链接一起使用?,javascript,selenium,promise,webdriverjs,Javascript,Selenium,Promise,Webdriverjs,代码如下: driver.get(url).then(function(){ txtFnn = driver.findElement(webdriver.By.xpath(xpath)); return txtFnn; }).then(function(){ txtFnn.sendkeys("12345678"); }) 错误: TypeError:txtFnn.sendkeys不是函数 我假设了很多,因为您没有提供太

代码如下:

 driver.get(url).then(function(){
         txtFnn = driver.findElement(webdriver.By.xpath(xpath));
         return txtFnn;
    }).then(function(){
           txtFnn.sendkeys("12345678");
    })
错误:

TypeError:txtFnn.sendkeys不是函数


我假设了很多,因为您没有提供太多信息,但是从代码中,我假设
driver.findElement
返回一个承诺。。。所以

driver.get(url).then(function(){
         return driver.findElement(webdriver.By.xpath(xpath));
    }).then(function(txtFnn){
           txtFnn.sendkeys("12345678");
    })

这样行吗?如果是这样,我将首先解释您的错误所在,但如果不是这样,那么浪费时间解释来自我的假设的东西是没有意义的

您的代码可以简化为:

driver.get(url);
txtFnn = driver.findElement(webdriver.By.xpath(xpath));
txtFnn.sendkeys("12345678");

你能试试这个并告诉我你是否仍然得到错误吗?您确定xpath是正确的吗?

txtFnn
变量包含
sendkeys
函数??txtFnn是全局变量吗?或者在包含此代码的作用域中,
driver.findElement
是否返回承诺?