繁体   English   中英

仅在双击后设置值

[英]Value only set after double click

我正在对一个数组进行序列化,并控制台记录了该数组的所有值。 我需要单击一个值两次才能获取正确的值记录。 我已经在几周前开始编程,因此在对这个问题进行评分时请记住这一点。 谢谢!

  $(function() {

    var sir = <?php print_r(json_encode($listings));?>;

    $('.btn-group label').click(function() {

      // Get all inputed data
      var data = $('form.purchase-form').serializeArray();

      console.log(data);

      input = [];

      // Make new array of wanted values
      for (var i = 0; i < data.length; i++) {

        if (data[i].name !== "_token" && data[i].name !== 'item_id' && data[i].name !== 'condition' && data[i].name !== 'payment') {
          input.push(data[i].value);
        }
      }
      console.log(input);
    });
  });

例如,让我们假设这是一种形式:

“第一次选择B”:

A B C

->日志B

“第二次单击仍选择C”:

AB C

->日志B

控制台日志示例:

0:对象名称:“ _ token”,值:“ MDGsfUfgYIMzd8ETvGaA9tbGlsh6hSchPxWjhNiQ”

您的if语句必须不正确,并且在您希望的时候不会评估为true。 另外,当您不显示要处理的数据时,基本上不可能解决此问题,因为if条件与该条件明确相关。

我会输入以下内容。

console.log(data);
console.log(data[i].name !== "_token" && data[i].name !== 'item_id' && data[i].name !== 'condition' && data[i].name !== 'payment')

这将帮助您了解if语句,数据或假设的不正确之处!

编辑

如果这是您运行时的唯一输出,则if检查将失败,并且您永远不会将任何内容推入输入var中。 比较data[i].name !== "_token"为假

0: Object name: "_token", value: "MDGsfUfgYIMzd8ETvGaA9tbGlsh6hSchPxWjhNiQ"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM