我正在尝试从正在放入购物车 table td 的数据库中动态生成的字符串中减去两个字符。所以我没有将产品展示为28.00美元,而是希望产品显示为28美元。由于这些值来自数据库,我不能简单地在变量中定义字符串,就像我在很多教程中看到的那样。
这是我的JS小提琴 http://jsfiddle.net/EbckS/6/
这是我的错误代码
$(document).ready(function(){
$("table td.SCNProductPrice").text(function(i, text) {
return text.slice(0, -2);
});
});
这是我在此处发布的另一个问题的后续跟进: jQuery Removing last two characters in a class
我将此置于一个不同的问题中,因为我没有意识到在表格中定位一个类需要不同的语法。谢谢你的帮助!
答案 0 :(得分:2)
假设你的html是有效的,即它有表和td你的切片有错误的索引。如果有的话,第一个将处理任意数量的小数点。
试
$("table td.SCNProductPrice").text(function(i, text) {
return '$' + parseInt(text.replace('$',''));
});
或
$("table td.SCNProductPrice").text(function(i, text) {
return text.slice(0, -3);
});
答案 1 :(得分:0)
您应该在td
内的tr
内添加table
。
<table>
<tr>
<td class="SCNProductPrice" valign="top">$28.00</td>
</tr>
</table>
答案 2 :(得分:0)
标记:
<table>
<tr>
<td class="SCNProductPrice" valign="top">$28.00</td>
</tr>
</table>
JS:
$(document).ready(function(){
$("td.SCNProductPrice").text(function(i,text) {
return text.split('.')[0];
});
});
不要忘记,你的小提琴中需要有效的标记。最后,我不确定你为什么要“28美元”。不应该只是“28美元”?上面的JS是后者。