2017-08-13 25 views
-2

人的我需要你的帮助。 我试图从我的html表值index-x(x =列的索引) 我试图做一个代码重新创建表到数组。它运作良好。但我不知道如何在那里做if语句。如何使html表索引从if语句 - x然后创建新表

我想把这样的if语句。 检查.table-bordered索引值[4]。当它具有的范围内的值,它会给一个回调与它在回调中设置的值创建新td

这样

  1. 如果.table-bordered索引的范围内[4]的值是1000<index[4]<=10000然后回调万
  2. 如果.table-bordered指数[4]值为10000<index[4]<=20000然后回调20000
  3. 如果.table-bordered指数[4]的值20000<index[4]<=40000然后回调37500

// JavaScript Document 
 
//Note: 
 
//The IF condition like this 
 
//a=1000; b=10000; c= 20000; d=45000 and x as the value 
 
//(a> x <b) ; (b> x <=c); (c> x <=d); (x>d) 
 
$(document).ready(function() { 
 

 
    $('#display_data').on("click", function(e) { 
 
    var myTableArray = []; 
 
    $(".table-bordered tr").each(function() { 
 
     var tdValue = ($(this).find("td:eq(4)").text()); 
 
\t var a= "1.000"; 
 
\t var b= "10.000"; 
 
\t var c= "20.000"; 
 
\t var d= "45.000"; 
 
\t 
 
\t var callback1="10.000"; 
 
\t var callback2="20.000"; 
 
\t var callback3="37.500"; 
 
\t var callback4="45.000"; 
 
     if (tdValue > a && tdValue <= b) { //this if condition not getting the value 
 
     console.log(callback1); 
 
     } else if (tdValue > b && tdValue <= c) { 
 
     console.log(callback2); 
 
     } else if (tdValue > c && tdValue <= d) { 
 
     console.log(callback3); 
 
     } else { 
 
     console.log('Your value is ' + tdValue); 
 
     } 
 
    }); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script> 
 
<table class="table table-bordered"> 
 
<tbody> 
 
<tr> 
 
<td>WCB</td> 
 
<td>101</td> 
 
<td>5006538574</td> 
 
<td>10.08.2017</td> 
 
<td>30.830</td> 
 
<td>KG</td> 
 
</tr> 
 
<tr> 
 
<td>WCB</td> 
 
<td>101</td> 
 
<td>5006539622</td> 
 
<td>10.08.2017</td> 
 
<td>21.080</td> 
 
<td>KG</td> 
 
</tr> 
 
<tr> 
 
<td>WCB</td> 
 
<td>101</td> 
 
<td>5006539759</td> 
 
<td>10.08.2017</td> 
 
<td>40.990</td> 
 
<td>KG</td> 
 
</tr> 
 
</tbody> 
 
</table> 
 
<button type="submit" id="#display_data" class="btn btn-primary">Upload File</button>

请别人帮我.. 只要给我一个,如果有功能的一个例子。我卡在这里

+0

请记住,在你的榜样,第4列的所有值都小于1000,由于小数分隔符。 –

回答

1

这里是一个示例代码,以帮助你。您需要使用"td:eq(4)"来获取值/文并使用它来比较:

$(document).ready(function() { 
 

 
    $('#display_data').on("click", function(e) { 
 
    var myTableArray = []; 
 
    $(".table-bordered tr").each(function() { 
 
     var tdValue = parseFloat($(this).find("td:eq(4)").text()); 
 
     console.log(tdValue) 
 
     if (tdValue > 1000 && tdValue <= 10000) { 
 
     console.log('This is 10000'); 
 
     } else if (tdValue > 10000 && tdValue <= 20000) { 
 
     console.log('This is 20000'); 
 
     } else { 
 
     console.log('Your value is ' + tdValue); 
 
     } 
 
    }); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<table class="table table-bordered"> 
 
    <tbody> 
 
    <tr> 
 
     <td>WCB</td> 
 
     <td>101</td> 
 
     <td>5006538574</td> 
 
     <td>10.08.2017</td> 
 
     <td>30.830</td> 
 
     <td>KG</td> 
 
    </tr> 
 
    <tr> 
 
     <td>WCB</td> 
 
     <td>101</td> 
 
     <td>5006539622</td> 
 
     <td>10.08.2017</td> 
 
     <td>21.080</td> 
 
     <td>KG</td> 
 
    </tr> 
 
    <tr> 
 
     <td>WCB</td> 
 
     <td>101</td> 
 
     <td>5006539759</td> 
 
     <td>10.08.2017</td> 
 
     <td>40.990</td> 
 
     <td>KG</td> 
 
    </tr> 
 
    </tbody> 
 
</table> 
 
<button type="submit" id="display_data" class="btn btn-primary">Upload File</button>

+0

btw ..我尝试chage你的代码,并添加一个'var'来定义'if函数为真'后的回调值为什么控制台日志数据给我我的表数据索引值[4]? –

+0

如果您要更改'td'的值,您需要使用该变量或使用$(this).find(“td:eq(4)”)。text()'再次获取该值。你想改变什么价值?另外,在给定的例子中,你的值小于1000。 –

+0

哦..就这样.. @Milan Chheda thx为您的答案。 ,这给了我下一步的灵感。 thx很多 –