【问题标题】:Input POST with same name input like PHP POST输入具有同名输入的 POST,如 PHP POST
【发布时间】:2018-06-27 13:18:42
【问题描述】:

HTML 表单的摘录:

<input type="text" id="1" name="name[1]" class="input-number" onchange="input_onchange(this.id)" value="39" min="1" max="25">
<input type="text" id="1" name="name[2]" class="input-number" onchange="input_onchange(this.id)" value="39" min="1" max="25">

我的 AJAX 调用:

$.ajax({
    type: 'POST',
    url: '/sepetim/ajax',
    data: {
        '_token': $('input[name="_token"]').val(),
        //'name': $('input[name=name]').val(),
        'name': $('input[name=name[' + id + ']]').val()
    },
    success: function(data) {
        $('#fiyat').replaceWith("<span class='para fw6'>" + data.formattedPrice + " TL</span>");
    }
});

从我的控制器中提取:

public function  addStock(Request $request) {
    $data = new ShoppingCartDetail();
    $data->cart_id = $request->input("cart_id");
    $data->stock_id = $request->input("stock_id");
    $data->price = 1;
    $data->save();
    $data->name = $request->input("name");
    $data->price = 1200;
    $formattedPrice = number_format($data->name * $data->price, "2" , ",", ".");
    return response ()->json ([ "data" => $data , "formattedPrice" => $formattedPrice ]);
}

我认为有问题的行是这一行:

$data->name = $request->input("name");

我已经尝试过,但我无法获得名称为“name”的输入?

【问题讨论】:

    标签: php jquery ajax laravel-5


    【解决方案1】:

    首先,您不能为多个元素提供相同的 ID;因此,我重命名了 id 的第二个实例。

    <input type="text" id="1" name="name[]" class="input-number" onchange="input_onchange(this.id)" value="39" min="1" max="25" />
    <input type="text" id="2" name="name[]" class="input-number" onchange="input_onchange(this.id)" value="39" min="1" max="25" />
    

    另请注意,我已删除您为 name 属性指定的索引。
    指定名称时,您只需要方括号,它将被自动索引。

    PHP 代码的其余部分看起来不错。

    JavaScript 代码存在一些问题 - 无论是在生产中,还是您复制并粘贴了一个选择并忘记相应地格式化它。
    违规行在success 之后,有一个逗号。我假设这是您刚刚复制了该部分的顶部,如果不是这种情况,则只需删除逗号即可修复该错误。

    请记住,开发时您可以打开控制台(通常按 F12),您可以查看与 JavaScript 代码相关的任何错误。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-08-21
      • 2017-05-23
      • 2015-06-09
      • 1970-01-01
      • 2014-07-09
      • 1970-01-01
      • 2017-01-10
      • 2017-08-03
      相关资源
      最近更新 更多