javascript - 获取每个 TD,然后将其格式化为货币
问题描述
我对 JS 很陌生,在通过网络、文档、朋友和其他关于 stackoverflow 的问题进行搜索之后,我已经得到了这一点。现在我无法通过它。
$(document).ready(function() {
var $table = $("table.valores");
if ($table.length > 0) {
var ValorTh = $("th.header:contains('Valor')");
var ValorColumnIndex = $(ValorTh).index();
var Valor_rows = $($table).find('tr');
$(Valor_rows).each(function() {
$(this).find('td').eq(ValorColumnIndex).toLocaleString('pt-BR',{style:'currency', currency: 'BRL'});
});
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="valores">
<thead><th class="header">Valor</th></thead>
<tbody>
<tr>
<td>15.00</td>
</tr>
<tr>
<td >16.00</td>
</tr>
<tr>
<td >17.00</td>
</tr>
<tr>
<td >18.00</td>
</tr>
<tr>
<td >19.00</td>
</tr>
<tr>
<td >20.00</td>
</tr>
</tbody>
</table>
我无法使以下内容正常工作并正确格式化 td 的值:C
toLocaleString('pt-BR',{style:'currency', currency: 'BRL'});
解决方案
您需要实际设置td
s 的内容。现在,您无需更改元素的内容。尝试这个:
$(document).ready(function() {
var $table = $("table.valores");
if ($table.length > 0) {
var ValorTh = $("th.header:contains('Valor')");
var ValorColumnIndex = $(ValorTh).index();
var Valor_rows = $($table).find('tr');
$(Valor_rows).each(function() {
var $td = $(this).find('td').eq(ValorColumnIndex);
var formatted = Number($td.text()).toLocaleString('pt-BR', {style:'currency', currency: 'BRL'});
$td.text(formatted); // <-- here, you need to set the value
});
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<table class="valores">
<thead><th class="header">Valor</th></thead>
<tbody>
<tr>
<td>15.00</td>
</tr>
<tr>
<td >16.00</td>
</tr>
<tr>
<td >17.00</td>
</tr>
<tr>
<td >18.00</td>
</tr>
<tr>
<td >19.00</td>
</tr>
<tr>
<td >20.00</td>
</tr>
</tbody>
</table>
推荐阅读
- mongodb - 我需要从记录集合中以键值对的形式提取数据,并将它们合并到 mongoDB 中的父记录中
- azure - Azure Functions 主机密钥自动重置
- javascript - 查找输入值并将其与 JSON 数据进行比较
- python - 如何获得无界类方法
- unity3d - Unet 同步动画层权重 Unity 3D
- c# - 如何通过绑定在 WPF UserControl 中引用自定义属性值?
- javascript - 如何将javascript数组转换为对象
- javascript - Angular 使用深度嵌套的 json 创建响应式表单
- python - np.block 不能将 (1,2) 数组与 (1,1) 数组连接在同一行
- c - TAIL递归计算谐波级数?