代码之家  ›  专栏  ›  技术社区  ›  RRR

如何从span标记中提取文本?

  •  0
  • RRR  · 技术社区  · 6 年前

    我需要从下面的span标记中提取文本“Finance”,将其与保存在文件中的另一个值进行比较。但我拿不到那个。

    <span class="panel-text col-md-8">Finance</span>
    

    以下是上述内容的完整代码

    <efx-dashboard-panel> <div class="dashboard-panel dashboard-type-employee-input">
                <div class="dashboard-panel-header">
                  <i class="fa fa-edit"></i>
                  <span class="dashboard-panel-title">Provided Employee Input</span>
                </div>
                <div class="dashboard-panel-content">
    
    <!----><div class="ng-star-inserted">
     <!---->
     <!----><div class="col-md-12 ng-star-inserted">
       <span class="panel-text label col-md-4">Department in which the employee works:</span><span class="panel-text col-md-8">Finance</span>
     </div>
    </div><div class="ng-star-inserted">
     <!---->
     <!----><div class="col-md-12 ng-star-inserted">
       <span class="panel-text label col-md-4">Employee's Date of Birth:</span><span class="panel-text col-md-8">03-08-1990</span>
     </div>
    </div><div class="ng-star-inserted">
     <!---->
     <!----><div class="col-md-12 ng-star-inserted">
       <span class="panel-text label col-md-4">County in which the employee works:</span><span class="panel-text col-md-8">Iowa</span>
     </div>
    </div><div class="ng-star-inserted">
     <!---->
     <!----><div class="col-md-12 ng-star-inserted">
       <span class="panel-text label col-md-4">Employee's home address:</span><span class="panel-text col-md-8">Station Street</span>
     </div>
    </div><div class="ng-star-inserted">
     <!---->
     <!----><div class="col-md-12 ng-star-inserted">
       <span class="panel-text label col-md-4">Employee ID:</span><span class="panel-text col-md-8">M1669</span>
     </div>
    </div><div class="ng-star-inserted">
     <!---->
     <!----><div class="col-md-12 ng-star-inserted">
       <span class="panel-text label col-md-4">Authorization Code:</span><span class="panel-text col-md-8">45637</span>
     </div>
    </div>
    
                </div>
              </div></efx-dashboard-panel>
    

    下面给出了上述代码的xpath选择器

    element(by.xpath('//*[@id="employer-call"]/div[2]/div[2]/efx-tabs/div/efx-tab[4]/div/div/employee-input-panel/efx-dashboard-panel/div/div[2]/div[1]/div/span[2]'));
    

    如何从标记中获取文本。我尝试使用text()、getText()和innerHTML。

    2 回复  |  直到 6 年前
        1
  •  0
  •   kjhughes    6 年前

    此XPath,

    //span[normalize-space()="Department in which the employee works:"]
     /following-sibling::span[1]
    

    将选择 span 紧跟在 跨度 其空间规格化字符串值为 "Department in which the employee works:"

    您可以附加 /text() 仅选择上述的文本节点 跨度 ,或将整个XPath表达式包装在 string() 获取其字符串值。

        2
  •  0
  •   RRR    6 年前

    我通过参考

    Solution

    我用过 expect(this.deptData.getText()).to.eventually.equal(employee.department);

    从span标记中提取数据,并将其与employee中的数据进行比较。部门