Javascript 按id拆分div内容以检查字符串长度

Javascript 按id拆分div内容以检查字符串长度,javascript,jquery,ajax,Javascript,Jquery,Ajax,所以我的问题是:我有一个通过AJAX获取的价格,但是如果价格以零结尾,我从中获取的不会将最后一个零添加到价格中。例如,0.40美分的值将返回0.4。因此,现在我试图找到一种方法,以存储价格的div为目标,在该期间拆分价格,如果美分列的长度小于2,则在价格中添加一个零。这就是我需要的代码。这是我的密码 var split4 = $('#price selling4').text(); var arr4 = split4.split('.'); if (arr4[2] < 2) {

所以我的问题是:我有一个通过AJAX获取的价格,但是如果价格以零结尾,我从中获取的不会将最后一个零添加到价格中。例如,0.40美分的值将返回0.4。因此,现在我试图找到一种方法,以存储价格的div为目标,在该期间拆分价格,如果美分列的长度小于2,则在价格中添加一个零。这就是我需要的代码。这是我的密码

var split4 =  $('#price selling4').text();
var arr4 = split4.split('.');
if (arr4[2] < 2) {
    $("#price selling4").append("0")
}
var split4=$('#price selling4').text();
var arr4=split4.split('.');
如果(arr4[2]<2){
$(“#价格销售4”)。附加(“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")
}
var split4=$('#price').text();
var arr4=split4.split('.');
控制台日志(arr4)
如果(arr4.length==2&&arr4[1]<10){
$(“价格”)。附加(“0”)
}
试试:

$("#price selling4").text( ($("#price selling4").text()*1).toFixed(2) );
这将使用定点表示法格式化数字-只需使用以下方法:

你的id
price selling4
看起来也很时髦-空格


尽管在将返回的ajax数据添加到
$(“#price selling4”)
元素之前最好先对其执行此操作。

您希望获得数字,并使用
固定(2)


应该是您所需要的全部。

根据HTML4.01规范,您的div ID是不合法的。由于没有为var split4分配任何内容,因此出现未定义错误

尝试将div重命名为一个单词就足够了。

我建议:

$("#price selling4").text(function(i,t){
    return parseFloat(t).toFixed(2);
})
顺便说一句,请注意,您的
id
(无效)中似乎有一个空格,或者您正在查找一个元素
(不存在)。如果
selling4
是一个类名,请在前面加上句点(如CSS),以给出
.selling4

参考资料:


能否显示div的HTML
#price selling4
表示容器内id为
price
的标签;那几乎肯定不是你的意思。这就是我所拥有的。我不认为空间会伤害任何东西。我将尝试不使用。ID和名称标记必须以字母([a-Za-z])开头,后面可以跟任意数量的字母、数字([0-9])、连字符(“-”)、下划线(“)、冒号(:”)和句点(.”)。Per--因此您的ID不允许包含空格。
$("#price selling4").text(function(i,t){
    return parseFloat(t).toFixed(2);
})