-6ren">
gpt4 book ai didi

javascript - rails 。 jQuery 表单提交字段模糊

转载 作者:行者123 更新时间:2023-11-28 06:31:27 25 4
gpt4 key购买 nike

在我的应用程序中,有一个包含 has_many order_items 的订单模型。

订单页面:

<div id="cart-rows">
<% @order_items.each do |order_item| %>
<%= render 'orders/cart_row', product: order_item.product, order_item: order_item %>
<% end %>
</div>

cart_row 部分(每个对应一个 order_item):

<div class="cart-row col-xs-12" id="order-item-<%= order_item.id %>">
<h3><%= product.name %></h3>

<div class="col-md-9 col-sm-8 col-xs-9 cart-form-wrapper">

<%= form_for order_item, remote: true do |f| %>

<%= f.text_field :color_quantity, value: order_item.color_quantity.to_i,
min: 0, class: "form-control cart-quantity" %>

<h4>
&nbsp;x&nbsp;<%= order_item.var_price("color") %>
<i class='glyphicon glyphicon-ruble'></i>
</h4>

<% if order_item.color_quantity > 0 %>
<h4>
&nbsp;= <%= order_item.color_quantity * order_item.var_price("color") %>
<i class='glyphicon glyphicon-ruble'></i>
</h4>
<% end %>

<%= f.hidden_field :product_id, value: product.id %>

<%= f.submit "", class: "btn-hidden submit-cart-row" %>

<h4>
Total: <%= order_item.item_total %>
<i class='glyphicon glyphicon-ruble'></i>
</h4>
<% end %>
</div>

每一行都有一个表格,其中包含每种产品的类型和数量。当表单提交时,当前 cart_row 中的信息(每种类型的总价及其数量)将使用 jquery 重新计算:

$(document).ready(function() {
$('.cart-quantity').blur(function() {
$(this).closest("form").submit();
});
});

我想每次在场模糊时提交它。问题是它有效,但仅适用于第一次模糊。当我改变另一个字段并模糊它时,什么也没有发生。否则,如果我点击输入表单,则会正常更新。
我在控制台中没有看到任何错误。服务器日志为空,因为没有任何反应:模糊操作不会触发。这一定是一些 javascript 错误,但我无法追踪它。

订单项目 Controller :

class OrderItemsController < ApplicationController
before_action :set_order
before_action :set_order_item, only: [:update, :destroy]

def create
@order_item = @order.order_items.new(order_item_params)
@order.save
session[:order_id] = @order.id
end

def update
@order_item.update_attributes(order_item_params)
@order_items = @order.order_items

end

def destroy
@order_item.destroy
@order_items = @order.order_items
end

private

def set_order
@order = current_order
end

def set_order_item
@order_item = @order.order_items.find(params[:id])
end

def order_item_params
params.require(:order_item).permit(:color_quantity, :high_quantity, :spec_quantity, :product_id)
end

end

谢谢。

最佳答案

我找到了导致错误的原因。我使用了一种草率的方法来更新购物车部分,例如$(".shopping-cart").load(document.URL + ' .shopping-cart');所以这是一个原因。

关于javascript - rails 。 jQuery 表单提交字段模糊,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34680868/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com