将数组值推送到Ajax[JQuery/PHP/HTML]

将数组值推送到Ajax[JQuery/PHP/HTML],php,jquery,html,Php,Jquery,Html,我无法将数组的值推送到php文件中 脚本: <script> $(document).ready(function() { var item_code = []; $('#save').click(function() { var item_name = []; var item_value = []; var item_quantity = []; for (var i = 0; i < item_code.length; i++)

我无法将数组的值推送到php文件中

脚本:

<script>
$(document).ready(function() {
  var item_code = [];

  $('#save').click(function() {
    var item_name = [];
    var item_value = [];
    var item_quantity = [];

    for (var i = 0; i < item_code.length; i++) {
      item_code.push($(this).val());
    }


    $('.item_name').each(function() {
      item_name.push($(this).val());
    });

    $('.item_value').each(function() {
      item_value.push($(this).val());
    });
    $('.item_quantity').each(function() {
      item_quantity.push($(this).val());
    });

    $.ajax({
      url: "insert2.php",
      method: "POST",
      data: {
        item_name: item_name,
        item_code: item_code,
        item_value: item_value,
        item_quantity: item_quantity,
      },
      success: function(data) {

      }

    });

</script>

$(文档).ready(函数(){
var项目_代码=[];
$(“#保存”)。单击(函数(){
var项目名称=[];
var项目_值=[];
var项目_数量=[];
对于(变量i=0;i
每当我在搜索栏上搜索项目代码时,我都会在“item_code”中存储一个值。然后,我想在insert2.php上推送item_code[]的值

   for (var i = 0; i < item_code.length; i++) {
      item_code.push($(this).val());
   }
我没有收到任何错误,但系统本身已冻结。

我猜“item\u code”变量也在代码中的其他地方全局声明,否则遍历它就没有意义了。尝试使用其他名称而不是“item\u code”将其发送到“insert2.php”

并更改您的循环:

   for (var i = 0; i < item_code.length; i++) {
      item_code_second.push($(this).val());
   }
for(变量i=0;i

此外,您推送相同的值“$(this).val()”的次数与item_代码中的值相同,这没有任何意义,而且名称、数量和值都完全相同。$(this)表示被按下的按钮,不要忘记您处于点击事件中。

为什么要循环
item\u code
并按到同一数组上?这将导致无限循环。您真正想在那里完成什么?如果
item\u code
已经包含项目列表,您不需要另一个循环。请澄清例如,我想在var item_code=[]中存储item_code的ID;您所说的“item_code的ID”是什么意思?
$(this).val()
#save
按钮的值。您好,先生,谢谢您的时间。这正是我要做的。嘿嘿。@Roseheim如果解决方案解决了您的问题,请确保将其标记为答案和/或投票
   for (var i = 0; i < item_code.length; i++) {
      item_code_second.push($(this).val());
   }