在我的cms中,我动态创建了行,在每行中我有一个文本框和一个复选框。
'<input value="FALSE" name="DynamicCheckbox" class="switch-input" type="checkbox" /> '
+ '<input class="playerNumber" name="DynamicTextBoxName" type="text" size="2" value="' + valueNumber + '" /> '
从后面的代码我想从每个文本框和复选框中获取值,并将它们放入List对象中。来自文本框的价值我没有遇到任何问题,但我无法从chechboxes获取值。在代码背后我有:
string[] textboxNames = Request.Form.GetValues("DynamicTextBoxName");
string[] checkbox= Request.Form.GetValues("DynamicCheckbox");
List<Classes.Player> PlayerList = new List<Classes.Player>();
for (int i = 0; i < textboxNames.Length; i++)
{
Classes.Player p = new Classes.Player();
p.name = textboxNames[i]; //WORKS FINE
p.start11 = checkbox[i]; //DOES NOT WORK WITH THIS CODE
}
答案 0 :(得分:1)
好的,我明白了。根据此post复选框,发布值&#39; true&#39;当且仅当选中复选框时。我没有抓住复选框值,而是使用了隐藏的输入。
<强> JS 强>
$("#btnAdd").live("click", function() {
var chk = $('input[type="checkbox"]').last();
chk.each(function() {
var v = $(this).attr('checked') == 'checked' ? 1 : 0;
$(this).after('<input type="hidden" name="' + $(this).attr('data-rel') + '" value="' + v + '" />');
});
chk.change(function() {
var v = $(this).is(':checked') ? 1 : 0;
$(this).next('input[type="hidden"]').val(v);
})
});
&#13;
<label class="switch">
<input data-rel="active" value="false" name="DynamicYesNoStart11" class="switch-input" type="checkbox" /><span class="switch-label" data-on="Yes" data-off="No"></span> <span class="switch-handle"></span>
</label>
&#13;
代替后面的代码
string[] checkbox= Request.Form.GetValues("DynamicCheckbox");
我把
string[] checkboxYesNoStart11 = Request.Form.GetValues("active");