我正在使用数据表,点击分页按钮总和后附加..帮助感谢。提前谢谢每当我点击按钮时,都会附加相同的数字。已经存在了。我想要例如,如果它是23.2323.23,想要保留23.23并在此之后删除
$("#btn").click(function() {
$("label").text($("label").text().replace(/[0-9]{2}\.[0-9][0-9]$/g, ''));
$("label").append("55")
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label>Total amount:23.2323.233</label>
<button id=btn>Click</button>
我们先来看看你的尝试吧。您使用/[0-9]{2}\.[0-9][0-9]$/g
搜索模式。它表示两个数字后跟点后跟两个数字($
表示它应该以它结尾。例如,23.23)这肯定不是你要找的模式。
您正在寻找的模式是digits.digits.digits.digits ...
如果你用正则表达式(.digits)+来表达它,它会导致/[0-9]+(\.[0-9]+)+
所以最终的代码应该是:
$("label").text($("label").text().replace(/[0-9]+(\.[0-9]+)+/g, ''));
编辑:
$("label").text($("label").text().replace(/[0-9]+(\.[0-9]+)+/g, $("label").text().match(/([0-9]+)\.[0-9]{2}/)[0]));
试试这个
parseFloat('23.2323.233').toFixed(2)
我想你想在追加新值之前完全删除标签中显示的先前数值。
所以你想只保留Total amount:
。然后在分页后附加从DataTable获得的值...
那么.split()
方法怎么样?
它创建一个基于“分隔符”的数组。
在你的情况下,我会使用:
字符并保留第一个数组项。
请注意,您必须重新添加:
...
$("#btn").click(function() {
var value_from_DT = 55.72;
$("label").text($("label").text().split(":")[0]+":");
$("label").append(value_from_DT)
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label>Total amount:23.23</label>
<button id="btn">Click</button>
另一种方式,最好的方法是专门为数值设置一个专用的span
:
$("#btn").click(function() {
var value_from_DT = 55.72;
$("#DT_sum").text(value_from_DT);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<label>Total amount:<span id="DT_sum">23.23</span></label>
<button id="btn">Click</button>
(我对你的问题不太清楚。)如果你想从标签中删除字符串,请执行此操作
$("label").empty().append("55")