JavaScript与html文件分开 – 如何巧妙地切换启用复选框和按钮

新手警报!

我想要聪明一点。 当用户选中复选框时,我希望禁用div中的所有按钮,当用户取消选中复选框时,我希望启用所有按钮。 但是,当用户选择按钮并显示列表时,在用户选择完成按钮(未显示)之前,我希望禁用div中的所有内容(复选框和按钮)。 当用户单击“完成”按钮时,div中的所有(复选框和按钮)将再次启用。

有关我想要做的评论的详细信息,请参阅问题底部的toggleFruitButtons函数。

里面的.cshtml文件:

All

在.js文件中:

 var jQuery = { jSearchType_All: $('#SearchType_All'), jSearchType_Apples: $('#SearchType_Apples'), jSearchType_Oranges: $('#SearchType_Oranges'), jSearchType_Pears: $('#SearchType_Pears'), jSearchType_Grapes: $('#SearchType_Grapes') }, toggleFruitButtons; //Bind events jQueryVar.jSearchType_All.on("click", toggleFruitButtons); jQueryVar.jSearchType_Apples.on("click", toggleFruitButtons); jQueryVar.jSearchType_Oranges.on("click", toggleFruitButtons); jQueryVar.jSearchType_Pears.on("click", toggleFruitButtons); jQueryVar.jSearchType_Grapes.on("click", toggleFruitButtons); 

这是我的问题:

 toggleFruitButtons = function() { // Is there a clever way to loop through both checkbox and // each button and set each's enabled/disabled to opposite? } 

当然,我想我可以做到以下几点:

 jQueryVar.jSearchType_Apples.prop("enabled", true ? false : true); jQueryVar.jSearchType_Oranges.prop("enabled", true ? false : true); jQueryVar.jSearchType_Pears.prop("enabled", true ? false : true); jQueryVar.jSearchType_Grapes.prop("enabled", true ? false : true); 

但有没有办法循环每个并使其启用值 它的启用价值?

伪代码示例:

 for each this.button.enabled = !this.button.enabled;