得到以下错误“失败:未知错误:a.tagName.toUpperCase不是函数”

时间:2018-12-12 07:21:36

标签: javascript protractor

当我尝试在文本框中输入文本时,出现错误。我可以单击,但无法使用“发送键”在文本框中输入任何文本。我也尝试过用Javascript执行器

<input class="form-control ng-pristine ng-invalid ng-touched" id="propertyName" maxlength="50" name="propertyName" required="" type="text" pattern="[a-zA-Z0-9\-\_]*">

我尝试了以下代码,

element(by.xpath("//input[@name='propertyName']")).sendKeys('tex');
browser.executeScript("element(by.css('#propertyName')).setAttribute('value', 'text')"); 
browser.executeScript("arguments[0].setAttribute('value', '" +" inputText "+"')", addMetaData.txtBoxKey);

我尝试了以下操作,它显示browser.actions.click不是函数,

browser.actions.click(addMetaData.txtBoxKey).sendKeys('text').perform();

2 个答案:

答案 0 :(得分:0)

我错过了括号,无法操作,现在可以正常工作了,

browser.actions().click(addMetaData.txtBoxKey).sendKeys('text').perform(); 

但是,仍然想知道为什么SendKeys不起作用

答案 1 :(得分:0)

尝试这种方式:-

browser.executeScript("arguments[0].setAttribute('value', '" +" inputText "+"')", addMetaData.txtBoxKey.getWebElement());