使用jquery比较两种价格
我刚刚为价格比较设置了这个jquery代码使用jquery比较两种价格,jquery,jquery-ui,jquery-plugins,bpopup,Jquery,Jquery Ui,Jquery Plugins,Bpopup,我刚刚为价格比较设置了这个jquery代码 if ([CARTTOTAL]>$125){ $('#element_to_pop_up').bPopup({ easing: 'easeOutBack', //uses jQuery easing plugin speed: 450, transition: 'slideDown'
if ([CARTTOTAL]>$125){
$('#element_to_pop_up').bPopup({
easing: 'easeOutBack', //uses jQuery easing plugin
speed: 450,
transition: 'slideDown'
});
}
在“源”页面上,我发现如下结果:
if ($2,345>$125){
$('#element_to_pop_up').bPopup({
easing: 'easeOutBack', //uses jQuery easing plugin
speed: 450,
transition: 'slideDown'
});
}
这意味着[carttotal]获取值
但它没有进入内部if条件…我在控制台中看到一个错误,没有定义$2?使用删除$(这是jQuery的命名空间)。替换数字并将其与parseInt进行比较(注意不要比较字符串) 试试这个,而不是整数,把它解析成float。 replace函数将删除除减号和句点(或小数点)以外的任何非数字字符
您的号码中的
、
密码和符号有问题。JavaScript使用英语标准(如果我错了,请纠正我),该标准使用
(句点)作为十进制分隔符。法语、巴西人和其他国家的网站都有一个常见的问题,这些网站使用coma作为十进制分隔符,使用点/句点作为千位分隔符(我是巴西人,所以我从经验中知道这一点)
有些事情要做:
(句点)以删除它们,然后按
替换,
(comas)李>
parseFloat()
将此值转换为实数李>
您需要将if语句中的值更改为实整数。试试parseInt..好的,让我试试..谢谢我试图修复这个问题中的格式,但是显然堆栈溢出的编辑不允许少于6个字符,所以我的编辑不被接受。但是条件是:如果([CARTTOTAL]>125美元)和[CARTTOTAL]获取购物车值..那么我应该用[CARTTOTAL]来写parseInt吗或数字1。您应该将值与货币符号分开;2.您不应该依赖DOM本身来执行此类操作,将数据抽象到模型中,或者至少使用
data-*
attributest[例如data amount=35
]。好吧,但这是一个价格。因此,不使用$的价格好吗?是的,$在现实生活中适用于我们,如果需要,可以在得到结果后再次附加美元符号。请尝试以下操作:var price=parseInt([CARTOTAL]。替换(“$”,”),10);如果(价格>125)仍然在控制台中显示错误。。。。如果(parseInt($2464.81)>125)…$2未定义?您可能想详细说明您的评论:)[CARTTOTAL]在有人在购物车中添加项目时获取值..但是当我设置条件if(parseInt([CARTTOTAL])>125{//do something here..}时,它会显示错误….$2未定义..检查我的更改@Rohitharmaif(parseFloat($3974.81.replace('/[^0-9-.]/g'))>compare\u value\u new)…我在页面soruce中得到了这个…它没有删除$,它们仍然存在..显示错误$2未定义。。。
var compare_value_old="$125";
var compare_value_new=parseFloat(compare_value_old.replace.('/[^0-9-.]/g'));
if (parseFloat([CARTTOTAL].replace('/[^0-9-.]/g')) > compare_value_new)
{
// do something here..
}