Javascript 使用对象进行jquery计算

Javascript 使用对象进行jquery计算,javascript,jquery,html,logic,Javascript,Jquery,Html,Logic,我试图做一个计算,根据选择,一个例子是,计算每个基本价格的成人数量 问题是,当我在select-选项中选择另一个值时,它不会更新该值,并且仍然显示第一个值 有什么建议吗 值={ 成人:$‘成人’。val, children:$'children'.val, ListPicking:$'Picking'.val } 价格={ 基数:价值观。成人*6, child:values.children*5, 拾音:values.listcopper*values.advanced, 总计:功能{ 返回t

我试图做一个计算,根据选择,一个例子是,计算每个基本价格的成人数量

问题是,当我在select-选项中选择另一个值时,它不会更新该值,并且仍然显示第一个值

有什么建议吗

值={ 成人:$‘成人’。val, children:$'children'.val, ListPicking:$'Picking'.val } 价格={ 基数:价值观。成人*6, child:values.children*5, 拾音:values.listcopper*values.advanced, 总计:功能{ 返回this.base+this.child+this.pickup } } $'.bookinginput'。关于“更改”,函数{ console.logprice.total } 1. 2. 3. 4. 6. 7.
我认为在触发onchange事件时需要更新这些值。 否则,您的值将在页面加载中设置,但在调用values.madures时不会刷新

$('.bookinginput').on('change', function(){
    values.adults = $('#adults').val();
    values.children = $('#children').val();
    values.listPickup = $('#pickup').val();
    console.log(price.total())
})

我认为在触发onchange事件时需要更新这些值。 否则,您的值将在页面加载中设置,但在调用values.madures时不会刷新

$('.bookinginput').on('change', function(){
    values.adults = $('#adults').val();
    values.children = $('#children').val();
    values.listPickup = $('#pickup').val();
    console.log(price.total())
})

正如大家所说,你需要重新计算。在这里,我对您的代码做了一些更改

基本上,每次调用total函数时,它都会首先调用getProperties,这是我编写的一个新方法,用于从对象获取当前值。然后它得到更新值的总数

价格={ base:null, child:null, 拾取:空, 总计:功能{ //在这里,我们首先用实际值更新属性,然后得到总值 返回this.getProperties.getTotal; } , //从“选择并更新当前价格”属性获取数据 getProperties:函数{ this.base=$成人.val*6; this.child=$'children'.val*5; this.pickup=$'pickup'.val*$'madures'.val; 归还这个; }, //函数获取总值 getTotal:函数{ 返回this.base+this.child+this.pickup; } } $'.bookinginput'。关于“更改”,函数{ console.logprice.total } 1. 2. 3. 4. 6. 7.
正如大家所说,你需要重新计算。在这里,我对您的代码做了一些更改

基本上,每次调用total函数时,它都会首先调用getProperties,这是我编写的一个新方法,用于从对象获取当前值。然后它得到更新值的总数

价格={ base:null, child:null, 拾取:空, 总计:功能{ //在这里,我们首先用实际值更新属性,然后得到总值 返回this.getProperties.getTotal; } , //从“选择并更新当前价格”属性获取数据 getProperties:函数{ this.base=$成人.val*6; this.child=$'children'.val*5; this.pickup=$'pickup'.val*$'madures'.val; 归还这个; }, //函数获取总值 getTotal:函数{ 返回this.base+this.child+this.pickup; } } $'.bookinginput'。关于“更改”,函数{ console.logprice.total } 1. 2. 3. 4. 6. 7.
你可以解释一下你的代码,你让我目瞪口呆,哈哈@胡安达维德当然,你可以解释一下你的代码,你让我目瞪口呆,哈哈@胡安达维德:当然,你明白了,但可能是在复制代码,目的是使其可重用。不是吗?是的,但可能是复制代码,目的是使其可重用。不