【发布时间】:2016-06-23 13:06:41
【问题描述】:
<h3 class="ui-accordion-header ui-helper-reset ui-state-default ui-accordion-header-active ui-corner-top ng-binding ng-scope ui-state-active" ng-click="updateActiveTab($index)" role="tab" ng-class="{'ui-state-active': tabs.active == $index}" ng-if="isUserPermitted($index) && feature.visible" ng-repeat-start="feature in model.features">
<input class="ng-pristine ng-untouched ng-valid" type="checkbox" ng-click="$event.stopPropagation()" style="vertical-align: middle;" ng-change="validateAndUpdateModel($index)" ng-model="ui.featuresEnabled[$index]"/>
AUS - Demand Response Modes (DRM)
<!-- nasty hack to fix line break for validation error messages -->
<!-- ngIf: tabs.active != $index && (feature.label|translate).length >17 -->
<!-- ngIf: tabs.active == $index && (feature.label|translate).length >17 -->
<span class="glyphicon glyphicon-collapse-up ng-scope" style="float: right; vertical-align: middle; margin-right: 4px" ng-if="tabs.active == $index && (feature.label|translate).length >17"/>
<!-- end ngIf: tabs.active == $index && (feature.label|translate).length >17 -->
<!-- ngIf: (feature.label|translate).length >17 -->
<br class="ng-scope" ng-if="(feature.label|translate).length >17"/>
<!-- end ngIf: (feature.label|translate).length >17 -->
<!-- ngIf: showFeatureValidation(feature) -->
<!-- ngIf: !showFeatureValidation(feature) && showDoubleUsageValidation(feature) -->
<!-- ngIf: tabs.active != $index && (feature.label|translate).length <=17 -->
<!-- ngIf: tabs.active == $index&& (feature.label|translate).length <= 17 -->
</h3>
这是 HTML,我需要我的 XPath。它包含一个复选框和复选框的标签(AUS - 需求响应模式(DRM)),在整个 HTML 中有多个标签,因此我需要一种方法来确保我选择的复选框包含正确的标签 - 就像在这个例子中需求...
到目前为止我尝试的是:
//*[@role='tab' and contains(text(),'Demand')]//*[@type='checkbox']
还有一些其他版本看起来大多相同,但我无法让它正常工作,它要么显示所有复选框但未与 h3 标签中的标签链接,要么根本没有。
【问题讨论】: