如何在mvc中获取动态复选框的选定值?

时间:2014-01-07 12:37:51

标签: jquery asp.net-mvc checkbox

我已经在mvc中创建了一个复选框列表,现在我需要使用jquery来检查复选框值以进行进一步编码。但是我在获取复选框值时遇到问题,我的代码在下面

 @{
int i = 1;
foreach (CheckBoxList item in Model.Items)
{
     <input type="checkbox" name="#= Text #" id="#= Text#(i) #" value="#= item.Value #" />
     <span> @item.Text</span>
  <br/>
   i++;
}
}

告诉我如何使用jquery

检索复选框值

提前致谢

3 个答案:

答案 0 :(得分:1)

只需创建一个对象数组并按下值

即可
var allCheckboxInfo=[];

$('input[type="checkbox"]').each(function(){

var checkBoxItemInfo=new {};
checkBoxItemInfo.id=this.id;
checkBoxItemInfo.value=this.value;

allCheckboxInfo.push(checkBoxItemInfo);


});

然后遍历数组并执行您想要执行的操作

答案 1 :(得分:0)

试试这个jquery函数,

$(function(){
  $('#save_value').click(function(){
    var val = [];
    $(':checkbox:checked').each(function(i){
      val[i] = $(this).val();
    });
  });
});

或者可以试试这个,

<script type="text/javascript">
$(document).ready(function () {
  var selectedValues="";
  $checkedCheckboxes = $("input:checkbox:checked");
    $checkedCheckboxes.each(function () {
      selectedValues +=  $(this).val() +",";
    });
 alert(selectedValues);//u get a comma separated list
});
</script>

答案 2 :(得分:0)

当你有razor提供的html助手时,不知道你为什么使用普通的html标签

你不能使用

  @Html.CheckBoxFor(model=>model.chkVal)

试试这个

 var checkedValues = $('input[type=checkbox]:checked').map(function()
                {
                    return $(this).val();
                }).get();

checkedValues将包含已检查chekbox的所有值