2017-09-16 76 views
0

不知有人能幫助我嗎?我有HTML使用javascript控制文本

<td class="fieldarea"> 
<label for="cycle1" class="radio-inline">{$pricing.monthly}</label> 
</td> 

{$pricing.monthly}這一點 - 吐出來的是這樣的「£9.99一年的。

我無法控制它吐出來,有時可能會有一個免費產品,它會顯示這樣的:£0.00 one year

這是相當難看。我希望能夠用這個邏輯來控制文本:

< If text in .radio-inline = '£0.00' replace with the text ' ' (hide it) > 

希望這種事情是可能的嗎?

+3

這是什麼模板引擎? – Caramiriel

回答

0

您可以檢查$ pricing.monthly的價值。

使用indexof

$(document).ready(function() { 
 
var emptyprice = "£0.00"; 
 
//loop thru elements with radio-inline class 
 
var labels = document.getElementsByClassName("radio-inline"); 
 
for(var i = 0; i < labels.length; i++) 
 
{ 
 
// Compare the price with the £0.00` 
 
var aPosition = labels[i].textContent.indexOf(emptyprice); 
 
// Then check if the aPosition if dosn't equal to -1... 
 

 
if (aPosition !== -1){ 
 
    // replace £0.00 year with 1 years 
 
    var str = labels[i].textContent; 
 
    labels[i].textContent = str.replace(emptyprice, "1")+' year'; 
 

 
} 
 
} 
 
});
<td class="fieldarea"> 
 
<label for="cycle1" class="radio-inline"> 
 
£0.00 
 
</label> 
 
</td> 
 
<hr> 
 
<td class="fieldarea"> 
 
<label for="cycle1" class="radio-inline"> 
 
£9.99 
 
</label> 
 
</td>

+0

感謝您的回覆。我不能編輯代碼,所以需要它來專門查看是否有£0.00,如果有,請隱藏它。 – Doug

+0

你想隱藏td!? – M0ns1f

+0

這是你在找什麼,我0.00英鎊自動隱藏 – M0ns1f

0

它是什麼框架試試這個邏輯是什麼?你可以在你的js解析數字並用html做一些動作。例如,如果Angular js可以使用指令ng-hide/ng-show/ng來隱藏span,如果

+0

感謝您的回覆。這就是超出我有限的知識我害怕!如果我是新的,那意味着我可能會自己寫代碼:) – Doug