Javascript 从多个项目中获取id,以便在AJAX请求中使用它们

Javascript 从多个项目中获取id,以便在AJAX请求中使用它们,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,让我向你解释我的问题 我有一个数据库,里面有几个项目。我做了一个while循环来显示一个隐藏的输入,每个项的id都是一个值。我希望获得每个项目的每个id,以便在AJAX请求中使用它们来检查其他db表中的内容 这是我的while循环: $reqfollow = db_query('SELECT following_id FROM following WHERE follower_id = ?', array($_SESSION['mc']['id'])); while($follow =

让我向你解释我的问题

我有一个数据库,里面有几个项目。我做了一个while循环来显示一个隐藏的输入,每个项的id都是一个值。我希望获得每个项目的每个id,以便在AJAX请求中使用它们来检查其他db表中的内容

这是我的while循环:

$reqfollow = db_query('SELECT following_id FROM following WHERE follower_id = ?', array($_SESSION['mc']['id']));
    while($follow = $reqfollow->fetch())
        {

$reqitems = db_query('SELECT * FROM items WHERE user_id = ? ORDER BY date DESC', array($follow['following_id']));
    while($items = $reqitems->fetch())
            {
?>

    <input type="hidden" class="id" value="<?php echo $items['id']; ?>"> //this is where i have the id of each item

<?php } ?>
我真的需要帮助,因为我有点迷路了

以下是我如何使用数组执行此操作:

function checkingfetchresult(userid){

            $.post("ajax/checkingfetchresult.php", { userid: userid },
            function(check){
            console.log(check);
                var id = [];
                $(".id").each(function(){
                    id.push($(this).val());
            });
                console.log(id);
        });
}
但是我有3倍于相同数组:///p>
varids=$(“.id”),r=[];
var ids = $(".id"),r=[];
for (var i = 0; i<check; i++){
   var id = ids.eq(i).val();          
   console.log(id); //Only the first one
   r.push(id);
}
return r;

对于(var i=0;i这不是精确的解决方案,但我认为您可以尝试以下方法:

var $inputs = $("input:hidden");
var i = 0;
var ids = [];
$inputs.each(function() {
    ids.push($(this).val());
    i++;
    if (i == check) {
        return false;
    }
});
console.log(ids); //1,2,3,4,5...
然后在ajax中使用ID作为:


$.post(“ajax/checkinglikebutton.php”,{id:ids.join()},

我有每个id,但是现在我如何才能让它们从函数中消失,并将它们赋予一个新函数?我应该能够从函数中控制台.log(r),但它告诉我r没有定义
$(“input.ids:hidden”);
,和
break
什么都不做id将始终包含每个输入值我有一个错误,控制台告诉我break不可能存在:SyntaxError:未标记的break必须在循环或开关break内;输出一个奇怪的东西,我有一个3倍的数组,第一个包含奇怪的'if',我没有最后一个一个。另外两个数组包含每个id加上奇怪的id…这可能是因为它读取了页面上所有的
隐藏的
字段。通过提供表单id作为
var$inputs=$(“#表单id input:hidden”);
我从来没有在代码中声明过任何表单,我只放了隐藏的输入,使它更具体
var ids = $(".id"),r=[];
for (var i = 0; i<check; i++){
   var id = ids.eq(i).val();          
   console.log(id); //Only the first one
   r.push(id);
}
return r;
var $inputs = $("input:hidden");
var i = 0;
var ids = [];
$inputs.each(function() {
    ids.push($(this).val());
    i++;
    if (i == check) {
        return false;
    }
});
console.log(ids); //1,2,3,4,5...