2016-09-27 10 views
0

分度器を使用してhtmlスパンにあるID = 2504を取得し、コンソールログに表示します。 ID番号がすべてtime.Myコードがどのように見える異なる場合がありますので、このIDは、動的に生成されます。分度器を使用してスパンのデータを取得する必要があります

<span class="link ng-binding" ng-click="openTrackId(mapFeedBack.reportId)">Your tracking number is 2504</span> 

私はそれを達成する方法を教えてください?

答えて

3

正規表現を使用すると、文字列から数値を抽出できます。以下のサンプルコードを見てください。スパンテキストで

var id = element(by.css("span.link")).getText().then(function(text){ 
    return text.replace(/[^0-9]+/g, ""); 
}) 
0

IDは、あなたが複数のスパンを持っている場合は、あなたが置くことができ

element.all(by.tagName('span').get(0).getText().then(function(text){ 
    textTokens = text.split(" "); 
    var Id = textTokens[textTokens - 1]; 
    console.log(Id); 
}); 

注を行うことができます分度器を使って

var textTokens = text.split(" "); 
var Id = textTokens[textTokens.length - 1]; 
console.log(Id); 

を行うことができます書かれた最後のものである場合上記のコードをループし、各スパン要素のIDをコンソールに表示します。

element.all(by.tagName('span').count().then(function(spanCount){ 
    for (var i = 0; i < spanCount; i++){ 
     element.all(by.tagName('span').get(i).getText().then(function(text){ 
      textTokens = text.split(" "); 
      var Id = textTokens[textTokens - 1]; 
      console.log(Id); 
     }); 
    } 
}); 
関連する問題