2016-06-21 10 views
1
<div class="detail">Upgrade Level 4</div> 

私はdivを上記と同じです。私は、コードを使用して、このdivを等しくする変数を設定している:divの内容と同じ変数に設定

tavern = document.querySelector(".detail") 

私は今、このdiv内の数を等しくする新しい変数をしたいです。だから私は、「レベルアップ」とdiv内の数を等しくするための新たな変数を設定してフィルタリングする方法が必要です:

tavernLevel = 4 

イムこれを実行する方法がわからないように?

ご協力いただければ幸いです。

常に同じ Upgrade Level "number"内のテキストは、それが与えられた分離器を使用して部分文字列に文字列を分離することにより、文字列の配列にStringオブジェクトを分割します(我々の場合には、セパレータが Upgrade Levelである)ので、それがする場合は、 split()機能を使用することができます

答えて

1

2列['Upgrade Level ','4']のリターンアレイと、私たちはインデックス[1]を使用して、第2の列になります。

var tavern = document.querySelector(".detail").innerText; 
var tavernLevel = tavern.split('Upgrade Level ')[1]; 

・ホープ、このことができます。

var tavern = document.querySelector(".detail").innerText; 
 
var tavernLevel = tavern.split('Upgrade Level ')[1]; 
 

 
alert(tavernLevel);
<div class="detail">Upgrade Level 4</div>

+0

これはA.Seidel @ –

+0

かもしれなぜあなたはそれがその中に未定義の値と警告を返す知っているのですか?私のクロムでうまく動作しますこのフィドルを確認してくださいhttps://jsfiddle.net/jnwrc5ay/123/ –

+0

@ZakariaAcharkiエラーは小文字の "L"です。ヘルプのレベル感謝のためにiveはhttps:// jsfiddleで動作しています。 net/Adamseidel/c44eanzw/3 / –

0

あなたは正規表現でそれを行うことができます。私はクロームコンソールでこれを実行すると、それはundefinedを返します

var regExp = /\d+/g; 

var strHtml = "Upgrade level 4"; 

strHtml.match(regExp); // return ["4"].Just use parseInt to get the number 
関連する問題