2010-09-27 100 views
0

我有这个jQuery代码,并且想要切换它。当我使用使用.toggle()jquery

$('#checkb').toggle(function() }); 

它不切换

$('#checkb').bind('click',function() { 
    var PackagePrice = $('#specs_packageprice').text(); 
    var Quantity = $('#specs_quantity').text(); 
    var ItemPrice = $('#specs_itempr').text(); 
    var Unit = $('#specs_unit').text();  
    var calc = Unit*ItemPrice; 

    $('#final_value').text(calc);        
}); 

出了什么问题?

感谢 让

+0

如果您将代码显示为如何使用它,那么这将有所帮助....或者您是如何确实尝试使用它的第一行代码? .toggle()需要两个参数,其中您通常会将回调函数调用传递给两个参数,每个参数对应一个“切换状态”。您列出的所有内容都有一个参数,调用一个空的匿名函数。 – 2010-09-27 14:07:05

+0

你的代码看起来像缺少块 - 'toggle'行有一个空的'}'。 – RickF 2010-09-27 14:10:29

回答

3
$('#checkb').toggle(function() { // Every even click 
    var PackagePrice = $('#specs_packageprice').text(); 
    var Quantity = $('#specs_quantity').text(); 
    var ItemPrice = $('#specs_itempr').text(); 
    var Unit = $('#specs_unit').text();  
    var calc = Unit*ItemPrice; 
    $('#final_value').text(calc);        
}, 
function() { // Every odd click 
    // Do something here 
}); 

编辑: 的toogle似乎与复选框搞乱。您可以尝试

$('#checkb').click(function() { 
    if ($(this).attr("checked")) { 
    //do stuff if the checkbox is checked 
    } else { 
    //do stuff if the checkbox isn't checked 
    } 

);

+0

这里#checkb是复选框的ID。它工作正常,但复选框没有得到检查 – X10nD 2010-09-27 14:22:54

1

建立一个函数来处理这个像这样:

function calc_on_click(){ 
    var PackagePrice = $('#specs_packageprice').text(); 
    var Quantity = $('#specs_quantity').text(); 

    var ItemPrice = $('#specs_itempr').text(); 
    var Unit = $('#specs_unit').text();  
    var calc = Unit*ItemPrice; 

    $('#final_value').text(calc); 

    return false; 
} 

然后,只需点击元素绑定到你的总和按钮!

$("#checkb").click(calc_on_click); 
//Or if its explicitly a toggle needed: 
$("#checkb").toggle(calc_on_click,calc_on_click); //On/Off 

然后,该功能应该做你需要它做的事情。