簡體   English   中英

jQuery轉換 <td> 字段值轉換為錨標記

[英]jQuery converts <td> field value into anchor tag

所以我在我寫的網絡應用程序中遇到了一個非常奇怪的錯誤。 如果我在計算機(windows / linux / ios)上運行它比沒有這個問題。 但是,當我在iPhone或iPad上運行時,我會在特定的地方獲得NaN

所以我想計算一個給定值的百分比。 這是我捕獲js中的td字段的方法:

var total_vend = document.getElementById("tot_vend").innerHTML;
var max_production = document.getElementById("tot_max").innerHTML;

很標准。 然后,為了計算百分比,我使用:

num = Math.floor(total_vend / max_production * 100);
text = num + "%"; //allows me to had the percentage symbol to the number

這是它變得棘手的地方。 我有4個地方在這里運行(4個不同的帳戶有不同的值)。 只有一次會議我得到了NaN

我已經alert() total_vendmax_production以及total_vend我有正確的值,但是在max_production我得到一個錨標記: <a href="tel:1367520">1367520</a>及其包含的值這是我計算百分比所需的價值。

讀取值的table

<table id="totais_ano">
    <tr>
        <th>TProd</th>
        <th>TVend</th>
        <th>TMax</th>
        <th>TPass</th>
    </tr>
    <tr>
        <td id="tot_prod"><?php echo $total_prod; ?></td>
        <td id="tot_vend"><?php echo $total_vend; ?></td>
        <td id="tot_max"><?php echo $total_max; ?></td>
        <td id="tot_vend_passado"><?php echo $total_pass; ?></td>
    </tr>
</table>

任何人都可以向我解釋我的代碼到底發生了什么? 就像我說的那樣,只有當我使用iPhone或iPad訪問我的網絡應用程序中的特定帳戶時才會發生這種情況。

我想你應該把它.textContent

var max_production = document.getElementById("tot_max").textContent.trim();

一個簡單的測試:

 var a = document.getElementById('phone').textContent.trim(); alert(a); 
 <div id='phone'><a href="tel:1367520">1367520</a></div> 

作為旁注我會說你應該修剪()刪除前導/尾隨空格的值。

var total_vend = document.getElementById("tot_vend").innerHTML;
var max_production = document.getElementById("tot_max").innerHTML;

這兩個變量包含一個字符串。 你需要將它們的值轉換為整數,如下所示:

var total_vend = parseInt(document.getElementById("tot_vend").textContent);
var max_production = parseInt(document.getElementById("tot_max").textContent);

此外,如果max_produtions等於0,則除法將失敗(不能除以0)。 一定要處理這種可能性;)

使用以下代碼獲取從td捕獲的值

var total_vend = document.getElementById("tot_vend").innerHTML;
total_vend = parseInt(total_vend);
var max_production = document.getElementById("tot_max").innerHTML;
max_production = parseInt(max_production);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM