【发布时间】:2013-09-27 15:04:04
【问题描述】:
我有以下函数,它返回一个已选中复选框的数组。
function grabData(checked) {
return $('.product_category_selector' + (checked? ':checked' : ':not(:checked)')).map(function (index, chk) {
return $(chk).data('id');
}).get();
在我的主要处理功能中,我目前将“状态”硬编码为1
使这种动态变化的最佳方法是什么?
完整代码:
$('body').on("click", "#brands_by_category_submit_btn", function (e) {
e.preventDefault();
var self = $(this);
var sortOrder = [];
var id = $("#manID").data("id");
var brand_name = $("#brand_name").data("id");
var data = grabData(true);
$(".order").each(function(){
sortOrder.push($(this).val());
})
if(data.length)
{
var data_array = {
id : id,
brand_name : brand_name,
cat_id : data,
sortOrder : sortOrder,
state : 1
};
【问题讨论】:
-
状态是什么意思?
-
应该为动态状态分配什么值?
-
@Sudhir State 是复选框的0和1的选中状态
-
@RohanKumar State 应该是 0 或 1 但这取决于数据中的内容
-
由于您在方法中对检查状态进行硬编码....没关系..否则您可以使用像
checked ? 1 : 0这样的三元运算符
标签: javascript jquery checkbox