我已经在SO和其他媒体上搜索了我的问题,但我找不到合适的解决方案。
我需要的是在列中找到一个值(5或更大),然后提醒该行第一列的值。
我对jQuery很新,所以解决方案实际上可能很简单,但我无法弄清楚。
这是我的表格布局:
<tr class="itemRow row-0 odd" id="cartItem_SCI-1">
<td class="item-name"> Hat - Spring Collection </td>
<td class="item-price">$20.00</td>
<td class="item-decrement"><a href="javascript:;" class="simpleCart_decrement">-</a></td>
<td class="item-quantity">1</td>
<td class="item-increment"><a href="javascript:;" class="simpleCart_increment">+</a></td>
<td class="item-total">$20.00</td><td class="item-remove"><a href="javascript:;" class="simpleCart_remove">Remove</a></td></tr>
我想要做的是查找item-quantity是否等于或大于5,然后根据该项警告item-name。
答案 0 :(得分:1)
遍历所有行,将所有货币值转换为数字并对其进行检查。如果大于5,请找到行的名称<td>
并提醒它。
<强> JS 强>
$(document).ready(function(){
$('.itemRow').each(function(){
var itemprice = $(this).find('.item-price').html();
var itemprice_format = Number( itemprice.replace(/[^0-9\.]+/g,""));
if(itemprice_format >= 5)
alert($(this).parent().find('.item-name').html());
});
});
<强> HTML 强>
<table>
<tr class="itemRow row-0 odd" id="cartItem_SCI-1">
<td class="item-name"> Hat - Spring Collection1 </td>
<td class="item-price">$4.00</td>
<td class="item-decrement"><a href="javascript:;" class="simpleCart_decrement">-</a></td><td class="item-quantity">1</td>
<td class="item-increment"><a href="javascript:;" class="simpleCart_increment">+</a></td>
<td class="item-total">$20.00</td><td class="item-remove"><a href="javascript:;" class="simpleCart_remove">Remove</a></td>
</tr>
<tr class="itemRow row-0 odd" id="cartItem_SCI-2">
<td class="item-name"> Hat - Spring Collection2 </td>
<td class="item-price">$20.00</td>
<td class="item-decrement"><a href="javascript:;" class="simpleCart_decrement">-</a></td><td class="item-quantity">1</td>
<td class="item-increment"><a href="javascript:;" class="simpleCart_increment">+</a></td>
<td class="item-total">$10.00</td><td class="item-remove"><a href="javascript:;" class="simpleCart_remove">Remove</a></td>
</tr>
</table>
答案 1 :(得分:0)
试试这个:您可以使用tr
迭代所有.each()
并比较价格和总价值(如果大于或等于5),然后在item-name
中显示alert()
$(function(){
$('#tableId tr').each(function(){
var itemPrice = parseFloat($(this).find('.item-price').text()) || 0;
var itemTotal = parseFloat($(this).find('.item-total').text()) || 0;
if(itemPrice >= 5 || itemTotal >= 5)
alert($(this).find('.item-name').text());
});
});