Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php中jquery ajax函数内部的for循环_Php_Jquery - Fatal编程技术网

php中jquery ajax函数内部的for循环

php中jquery ajax函数内部的for循环,php,jquery,Php,Jquery,我正在用php做一个评级应用程序,我想在jQueryAjax函数调用中编写一个for循环。我不知道如何使用正确的语法 我使用的PHP代码是 for(i=1;i<=4;i++) { <div class="like"> <a href="#" class="like" id="1" name="up"><img src="images/likebig.png"></a> <a href="#" class="like" id="1" na

我正在用php做一个评级应用程序,我想在jQueryAjax函数调用中编写一个for循环。我不知道如何使用正确的语法

我使用的PHP代码是

for(i=1;i<=4;i++)
{
<div class="like">
<a href="#" class="like" id="1" name="up"><img src="images/likebig.png"></a>
<a href="#" class="like" id="1" name="down"><img src="images/dislike.png"></a>

 <form>
 <input type="hidden" id="<?php echo $i; ?>" value="<?php echo $_SESSION['r_id'][$i]?>">
 </form>
}
</div>
<script type="text/javascript">

    $(document).ready(function()
    {
    $(".like").click(function(e)
    {
    e.preventDefault();
    var id=$(this).attr("id");
    var name=$(this).attr("name");
    var fname = $("#fname").val();
    var lname = $("#lname").val();
    var email = $("#email").val();
    for(var i=1;i<=4;i++)
    {
    var rel[i] = $("#i").val();
    }
    var dataString = 'id='+ id + '&name='+ name + '&fname='+ fname + '&lname='+ lname + '&email='+ email;
     $.ajax
      ({
      type: "POST",
      url: "rate.php",
      data: dataString,
      cache: false,
      });
     });
    });
</script>
for(i=1;i更改此项

var rel[i] = $("#i").val();
致:

或者,您可以使用以下方法:

.serialize()方法以标准URL编码表示法创建文本字符串。它对表示一组表单元素的jQuery对象进行操作。表单元素可以有几种类型:


这个
for(i=1;isorry但是这是如何回答for循环“问题”的呢?@tradyblix他的for循环语法是正确的,我想他想要
$(“#“+i”)
而不是
$(“#i”)
@undefined Hi friend Thnks来回答你的问题。但是当我试图提醒这个值时,它显示了错误“missing;before语句”在firebug错误中console@undefined您好。我将行[var rel[I]=$(“#I”).val();]更改为[var rel[I]=$(“#”+I.val();],并尝试提醒值rel[1]。@Balu定义
rel[]
在每次迭代中,您都在for循环外反复定义数组。是否有id为
#2
#3
的表单元素?如果没有,数组值将
未定义。
var rel[i] = $("#" + i).val();
$.ajax({
   type: "POST",
   url: "rate.php",
   data: $('form').serialize(),
   cache: false,
 });