所以这就是我的问题:我有一个我通过AJAX提取的价格,但是如果它以0结尾,那么我所提出的价格并没有将最后的零添加到价格中。例如,0.40美分的东西会以0.44的形式返回。所以现在我试图找到一种方法来定位存储价格的div,在期间拆分价格,如果美分列的长度小于2,则在价格上加零。那是我需要的代码。这是我的代码。
var split4 = $('#price selling4').text();
var arr4 = split4.split('.');
if (arr4[2] < 2) {
$("#price selling4").append("0")
}
我以前说过,我会再说一遍:我不是最聪明的程序员。但是从我的谷歌搜索,这似乎是我正在寻找的。但是,每当插入控制台时它什么都不做。附加本身甚至不起作用。而变量则以未定义的形式返回。我不确定自己还可以做些什么。
答案 0 :(得分:1)
尝试:
$("#price selling4").text( ($("#price selling4").text()*1).toFixed(2) );
使用定点表示法对数字进行格式化 - 只需使用toFixed方法:
你的身份price selling4
看起来很时髦 - 空间?
虽然最好在返回的ajax数据添加到$("#price selling4")
元素之前执行此操作。
答案 1 :(得分:1)
您想获取该号码,并使其使用toFixed(2)
。
$('#price selling4').text(+($('#price selling4').text()).toFixed(2));
应该就是您所需要的一切。
答案 2 :(得分:0)
实际问题是你的逻辑,应该是 arr4 [1] ,你应该检查小于10 的值。
var split4 = $('#price').text();
var arr4 = split4.split('.');
console.log(arr4)
if (arr4.length == 2 && arr4[1] < 10) {
$("#price").append("0")
}
答案 3 :(得分:0)
根据HTML 4.01规范,您的div ID不合法。你得到了未定义的错误,因为var split4没有被赋予任何东西。
尝试将div重命名为一个单词,应该足够了。
答案 4 :(得分:0)
我建议:
$("#price selling4").text(function(i,t){
return parseFloat(t).toFixed(2);
})
顺便提一下,请注意,您的id
(无效)或中似乎有一个空白区域,您正在寻找一个元素<selling4>
(它不会不存在)。如果selling4
是类名,请使用句点作为前缀(与CSS一样),以提供.selling4
。
参考文献: