Javascript 如何从ajax中的输入中获取数组中的检查值

Javascript 如何从ajax中的输入中获取数组中的检查值,javascript,php,jquery,ajax,laravel,Javascript,Php,Jquery,Ajax,Laravel,我试图从我的ajax中获取检查过的输入值,但它只返回我的第一个勾号……这是我的代码 function getBranchAjax(cuid, stid) { $.ajaxSetup({ headers: { 'X-CSRF-Token': $('meta[name=csrf-token]').attr('content') } }); $.ajax({ url: "{{ route('reportin

我试图从我的ajax中获取检查过的输入值,但它只返回我的第一个勾号……这是我的代码

function getBranchAjax(cuid, stid) {
    $.ajaxSetup({
        headers: {
            'X-CSRF-Token': $('meta[name=csrf-token]').attr('content')
        }
    });
    $.ajax({
        url: "{{ route('reporting.getBranchAjax',['cuid','stid']) }}",
        method: 'GET',
        data: { cuid: cuid, stid: stid },
        dataType: 'json',
        success: function (data) {

            console.log(data);
            console.log(data.branch.length);


            //remove all option except the first option the append with new option
            //remove all option except the first option the append with new option
            for (var x = 0; x < data.branch.length; x++) {
                //console.log(data.branch[x].cb_branch_Name);
                $('#brRecord').append(`<tr><td style='width: 110px; text-align: left;'>${data.branch[x].cb_branchcode}
    </td><td style='width: 600px; text-align: left;'>${data.branch[x].cb_branch_Name}</td>
     <td style='width: 20px;'> 
    <input type="checkbox" class="ss" name="ss" id="ss" value="${data.branch[x].cb_branch_Name}" /></td><td>

                                    </td></tr>`);

            }


        },
        fail: function (xhr, textStatus, errorThrown) {
            alert('request failed');
        }
    })
}

我希望基于我的输入滴答值获得更多的值,这是因为您在for循环中添加了一个中断

移除它将解决您的问题

for(var i=0; inputElements[i]; ++i){
        if(inputElements[i].checked){
            checkedValue = inputElements[i].value;
        }
    }
如果要获取所有最新的已单击复选框,可以使用onChange

function checkedInput() 
{
 cosnt checkedValue = [];
 for(var i=0; inputElements[i]; ++i){
        if(inputElements[i].checked){
            checkedValue.push(inputElements[i].value);
        }
    }
  return checkedValue ;

}

$(document).on('change', '#ss', function () {
 console.log(checkedInput());
})

需要在一个数组(或类似数组)中保存多个值

例如:

var checkedValues = Array.from(document.getElementsByClassName('ss')).filter(el => el.checked).map(el => el.value);

console.log(checkedValues);
或者,由于问题被标记为jQuery:

var checkedValues = jQuery('.ss:checked').get().map(el => el.value);

console.log(checkedValues);

使用数组中的值,您可以对它们执行任何操作,例如显示它们或对它们执行某些转换。

所有输入字段都具有相同的
名称
属性值,你需要给你的输入字段一个唯一的名称属性值。为什么你会得到一个以上的值,因为这正是代码给出的值?如果我想返回更多基于记号的数据,我的代码是否需要任何更改?嗨…谢谢你的反馈…尝试删除中断,但只返回最新的记号数据…我想返回许多基于记号的数据在tickhi上,先生…请尝试您的代码,但它会返回所有不基于check的数据?有什么想法吗?好的,表达式只需要一个过滤器。已编辑。。。再试一次。
var checkedValues = jQuery('.ss:checked').get().map(el => el.value);

console.log(checkedValues);