jquery选择复选框选择的值

jquery select check box selected values

本文关键字:选择 复选框 jquery      更新时间:2023-09-26

<form id="myform">

<input type='checkbox' name='foo[]' value='1'>

<input type='checkbox' name='foo[]' checked='true' value='2' >

<input type='checkbox' name='foo[]' value='3' >

<input type='checkbox' name='foo[]' checked='true' value='4' >

</form>

现在使用jquery,我需要获取名称为foo[]的选定值。

此外,我需要将这些作为数组传递到php文件,即foo=array(2,4)

试试这个

    $("input[type=checkbox]:checked").each(function(){
          arr[]=$(this).val();
   });

获取每个元素的值,然后使用将其转换为json

  var myJsonString = JSON.stringify(yourArray);
function submitForm() {
  var form = $('#myform');
  form.submit(function(){ // configure onsubmit event
    form.attr({'method': 'post'}); // set form method to post
    form.attr({'action': 'yourphpfile.php'}); // set file to receive form data
  });
  form.submit(); // submit the form
}

在php文件上,您可以查看$_POST:中的内容

<?php
print_r($_POST);
?>

尝试这个

var val_arr = [];
var arr = $('input[name="foo[]"]:checked');
for(var i=0; i<arr.length;i++){
val_arr.push(arr[i].value);
}
console.log(val_arr);

你可以这样尝试,

var array = new Array();
$('input[name="foo[]"]:checked').each(function(i,el){
        array.push($(el).val());
});
for(var i in array){
   alert("value=="+array[i]);
}

如果需要,您可以阅读如何使用jQuery Post 检查复选框

试试这个解决方案:

var checkedValues = [];
var checkedElems= $('input[type=checkbox]:checked');
$.each(checkedElems, function(index, element){
   checkedValues.push($(element).val());
});
$.post(
    "something.php",
    {
       arrayOfValues: JSON.stringify(checkedValues),
       ........
    },
    function(data, textStatus, jqXHR){
       alert("Success!");
    }
);