hidden_ field值的默认值被缓存的值覆盖

问题描述 投票:0回答:1

无论我在代码中做什么,隐藏字段的值始终为“ 1”。我试图通过ERB,HTML和jQuery在代码中进行设置,但唯一起作用的是Javascript控制台中的jQuery。我在实际的代码库中所做的任何事情都不会影响它。

我希望它从nil的值开始,并使用JS将其设置为整数,但是我为完全能够将其从“ 1”更改而感到满意。

这是我尝试过的ERB:

<%= hidden_field_tag "id", nil, id:"id-field" %>

这是我尝试过的HTML:

<input type="hidden" name="id" id="id-field" value="0">

这是我尝试过的jQuery:

$("#id-field").val(47);

但是所有结果都会导致:

<input type="hidden" name="id" id="id-field" value="1">

就像我说的,如果我在控制台中运行jQuery,则最终可以更改该值。发生了什么事?

更新:

这绝对是一个缓存问题。我将值一次设置为“ 1”,但是我的语法绝对正确,但是我无法更改默认值。有人对隐藏字段的value属性有类似的麻烦吗? (我正在尝试使用hidden_​​field而不是hidden_​​field_tag,但是行为相同)

这是我正在使用的erb,value最初确实起作用,但是当我将值设置为其他值并刷新时,将应用缓存的值,并且value属性将被完全忽略。

<%= f.hidden_field :id, value: @id, id: "id-field" %>
html jquery ruby-on-rails forms hidden-field
1个回答
0
投票

尝试一下:

var field = $('input[name="id"]:hidden');
field.val('45');
© www.soinside.com 2019 - 2024. All rights reserved.