2017-02-08 86 views
0

我有多個列表項的網頁具有信息存儲的div,像這樣:搜索DIV的價值

<li class="item "> 
    <div class="name t-overflow">Symbiotic Ltd.</div> 
    <div class="price"> 
    <span class="wai t-wai-reset">Stock Price: </span>$501.83 
    </div> 
</li> 
<li class="item "> 
    <div class="name t-overflow">Health Service</div> 
    <div class="price"> 
    <span class="wai t-wai-reset">Stock Price: </span>$501.08 
    </div> 
</li> 

我需要做什麼檢查,如果股票價格比X.低所以,例。我需要結合健康服務和股票價格,如:健康服務股票價格:$ 501.08

這樣,我可以然後正則表達式健康服務找到的價格。這個信息有大約30個div,用於使用相同div名稱的不同股票。

+1

你有什麼代碼,使遠嗎? –

+0

把價格放在一個帶有類標識符的跨度內,然後通過jquery –

+0

'var x = 1e3; ($('li.item')。)(函數(i){var()){parseFloat($(this).find('。price')。text()。replace(/ [^。0-9]/g,'')); if(price SpYk3HH

回答

0

假設每個項目都包含在李(列表項)以下通過每個L1和地方格文本將循環的代碼進入,你可以執行你的正則表達式的數組。

Run Snippet below...

CompanyPrices = []; 
 

 
$('li.item').each(function() { 
 
    CompanyPrices.push($(this).find('.name').text()+ " " +$(this).find('.price').text()); 
 
}); 
 

 
//logs final array to console.. 
 
console.log(CompanyPrices)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<li class="item"> 
 
    <div class="name t-overflow">Symbiotic Ltd.</div> 
 
    <div class="price"> 
 
    <span class="wai t-wai-reset">Stock Price: </span> $501.83 </div> 
 
</li> 
 
<li class="item"> 
 
    <div class="name t-overflow">Health Service</div> 
 
    <div class="price"> 
 
    <span class="wai t-wai-reset">Stock Price: </span> $501.08 </div>

0

您可以通過所有的列表項循環使用each()方法,尋找使用find()方法text(),然後使用剛剛split()文本(名稱和價格,爲每一個。) $登錄得到的價格,然後你可以只使用if語句來檢查,如果價格比你想要的任何數量的更小或更大:

$('.item').each(function(){ 
 
    var price = $(this).find('.price').text().split('$')[1]; 
 
    console.log(price); 
 
    if(price < 502){ 
 
    $(this).css('background', '#f00'); 
 
    } 
 
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<li class="item "> 
 
    <div class="name t-overflow">Health Service</div> 
 
    <div class="price"> 
 
    <span class="wai t-wai-reset">Stock Price: </span> 
 
    $501.08 
 
    </div> 
 
</li> 
 
<li class="item "> 
 
    <div class="name t-overflow">Health Service</div> 
 
    <div class="price"> 
 
    <span class="wai t-wai-reset">Stock Price: </span> 
 
    $502.08 
 
    </div> 
 
</li> 
 
<li class="item "> 
 
    <div class="name t-overflow">Health Service</div> 
 
    <div class="price"> 
 
    <span class="wai t-wai-reset">Stock Price: </span> 
 
    $503.08 
 
    </div> 
 
</li>

0

如果值是動態的(即從PHP),那麼你可以將它們存儲在一個變量。如果將它們設定值(當您更改代碼,即只改變),那麼你可以嘗試這種解決方案:

var stock1=document.getElementById('stock').innerHTML; 
 
stock1=stock1.replace(/Stock price: \$([\d,.]*)/g,"$1"); 
 
document.getElementById('stock').innerHTML=stock1;
<div id="stock">Stock price: $923.50</div> 
 
<div id="otherstock">Stock price: $291,402.29</div>