将值插入 div
Insert value to div
我有 HTML + Angular 看起来像这样:
<div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell ng-scope ui-grid-coluiGrid-15T" ng-class="{ 'ui-grid-row-header-cell': col.isRowHeader }" ui-grid-cell="">
<div class="ui-grid-cell-contents ng-binding ng-scope ui-grid-cell-focus" tabindex="-1">33</div>
</div>
看起来像:
我需要添加/更改 div 之间的值(在本例中为 33)
我怎么尝试发送密钥它没有帮助。我再次检查我的 XPATH 是否正确但仍然...
var pkValue = "11";
element(by.xpath('(/html/body/div[2]/div/div/div[2]/form/fieldset[2]/div[2]/div/div/div[2]/div[2]/div/div/div/div[3]/div)')).sendKeys(pkValue);
我是否遗漏了什么或者我是否需要为此做其他事情?
您需要set an innerHTML
using executeScript()
:
var elm = element(by.xpath('(/html/body/div[2]/div/div/div[2]/form/fieldset[2]/div[2]/div/div/div[2]/div[2]/div/div/div/div[3]/div)'));
browser.executeScript("arguments[0].innerHTML = '11';", elm.getWebElement());
此外,请考虑更改您正在使用的 xpath - 这个(从 html
根元素开始的绝对路径)非常脆弱。
我有 HTML + Angular 看起来像这样:
<div ng-repeat="(colRenderIndex, col) in colContainer.renderedColumns track by col.colDef.name" class="ui-grid-cell ng-scope ui-grid-coluiGrid-15T" ng-class="{ 'ui-grid-row-header-cell': col.isRowHeader }" ui-grid-cell="">
<div class="ui-grid-cell-contents ng-binding ng-scope ui-grid-cell-focus" tabindex="-1">33</div>
</div>
看起来像:
我需要添加/更改 div 之间的值(在本例中为 33) 我怎么尝试发送密钥它没有帮助。我再次检查我的 XPATH 是否正确但仍然...
var pkValue = "11";
element(by.xpath('(/html/body/div[2]/div/div/div[2]/form/fieldset[2]/div[2]/div/div/div[2]/div[2]/div/div/div/div[3]/div)')).sendKeys(pkValue);
我是否遗漏了什么或者我是否需要为此做其他事情?
您需要set an innerHTML
using executeScript()
:
var elm = element(by.xpath('(/html/body/div[2]/div/div/div[2]/form/fieldset[2]/div[2]/div/div/div[2]/div[2]/div/div/div/div[3]/div)'));
browser.executeScript("arguments[0].innerHTML = '11';", elm.getWebElement());
此外,请考虑更改您正在使用的 xpath - 这个(从 html
根元素开始的绝对路径)非常脆弱。