增加eq(i)setTimeout函数jquery

时间:2016-01-11 07:23:36

标签: javascript jquery wordpress increment var

我在wordpress循环中使用了setTimeout函数,对于每个帖子,我试图增加eq(i)。无论出于何种原因,我一直在尝试的一切都不起作用。这是我的代码 -

jQuery(document).ready(function() {
    var i = this;
    var sNum = 0;
    var iNum = sNum + 1;
    setTimeout(function(i) {
        $('.postidf:eq(i) input').val("<?php echo $id; ?>");
    }, 500);
});

我基本上需要它为页面上的每个帖子+1 -

$( '.postidf:eq(0) input' ).val( "<?php echo $id; ?>" );
$( '.postidf:eq(1) input' ).val( "<?php echo $id; ?>" );
$( '.postidf:eq(2) input' ).val( "<?php echo $id; ?>" );
$( '.postidf:eq(3) input' ).val( "<?php echo $id; ?>" );
etc..

2 个答案:

答案 0 :(得分:1)

使用字符串连接将i视为变量。

$('.postidf:eq(' + i + ') input').val("<?php echo $id; ?>");

$('.postidf').eq(i).find("input").val("<?php echo $id; ?>");

答案 1 :(得分:0)

如果你在WordPress循环中,那么

<?php
    $i = 0;
    foreach($all_results as $data) { ?>
      $('.postidf:eq(<?php echo $i; ?>) input' ).val( "<?php echo $id; ?>");
      <?php $i++; ?>
<?php } ?>

这里$ all_results表示你在WP_Query中获取的数组中的所有帖子,并通过定义$ i = 0来增加$ i。