我有一個複選框列表類似以下內容:在複選框,點擊保存值到一個數組
$('.check-user').click(function() {
var $this = $(this);
var user_id = $this.attr('value');
var brandContainer = $this.closest('.pop-state').siblings('.pop-brands');
brandContainer.html('<p style="margin: 10px !important;">Processing... </p>');
$.post('/user/usersBrands', { userId: user_id } , function(data) {
var brands = JSON.parse(data);
var container = $('<div class="pop-mission-co" />');
brands.forEach(function (brand, index) {
var isRegisteredToBrand = null;
if(brand.userId==null)
{
isRegisteredToBrand = false;
}
else{
isRegisteredToBrand = true;
}
container.append(buildBrand(brand.id, brand.name, isRegisteredToBrand, index));
});
function buildBrand(id, name, isActive, index) {
var isChecked = isActive ? 'checked="checked"' : ' ';
return $(
'<div class="pop-mission-to">' +
'<label>' +
'<input class="check-brand"' +
isChecked +
'type="checkbox"' +
'name=""' +
'value="' + id + '"' +
'data-id="' + index + '">'
+ name +
'</label>' +
'</div>'
);
}
brandContainer
.children('p').remove();
brandContainer
.html(container)
.find('.pop-mission-co').show();
});
brandContainer.on('change', '.check-brand', function() {
console.log($(this).attr("checked"));
});
});
在jQuery的一個$。員額後創建的複選框列表,現在我需要處理該事件時,每一項複選框被選中類似以下內容:
brandContainer.on('change', '.check-brand', function() {
console.clear();
var checked = "";
if($(this).attr("checked"))
{
checked = "checked";
}
else
{
checked = "unchecked";
}
console.log(checked);
console.log($(this).val());
});
正如你可以看到我使用的是委託事件處理程序檢查複選框是否已被檢查或不...當1個複選框用戶點擊我應該把它放在該陣列如下:
Array { "checked", "1" }
當用戶點擊另一個複選框數組應該這樣被更新:
Array { "checked", "1", "checked", "2" }
如果用戶取消選中,他已經選中該複選框,可以說第二個與值2,數組應該像這樣的:
陣{ 「檢查」, 「1」, 「未登記」, 「2」}
則處理前進......誰能幫我這個?非常感謝 ! :)
傢伙,我已經更新了我的問題,我表示取如何在當前文本框的值,並將其是否被選中或不... – perkes456
我想你想創建動態命名屬性。檢查這一個http://stackoverflow.com/questions/2318532/dynamically-name-a-json-property –
爲什麼不創建一個數組像'陣列{1 =>'檢查',2 =>'未選中'}' –