gpt4 book ai didi

ruby-on-rails - rails : Resetting form fields with page refresh

转载 作者:数据小太阳 更新时间:2023-10-29 07:15:40 26 4
gpt4 key购买 nike

我有一个 Rails 表单,它有一个 observe_field,它在下拉列表更改时执行 ajax 请求。 ajax 导致表单被重新呈现(表单是部分的),带有一个额外的参数,导致页面上的一些文本发生变化。一切正常,但是当我刷新页面(我正在运行 firefox)时,文本被重置并且下拉列表不会更改其值。因此,我最终得到了一个与动态文本不对应的选择值。

我已经尝试设置下拉菜单的默认选定值,但出于某种原因,firefox 不会通过刷新页面来更改该值。

这是 View 中下拉菜单的代码:

<%= select_tag :category, options_from_collection_for_select(@categories, :letter, :name, @letter) %>

@letter 是动态设置的,控制页面上的动态文本。

这是在页面刷新时呈现的操作:


def new



<pre><code>@part = Part.new
@letter = params[:letter] || "A"
@part.cpn = Part.find_next_cpn(@letter)
@categories = PartCategory.find(:all)
respond_to do |format|
format.js
format.html
end
</code></pre>

end

我需要一种方法来保留动态文本信息或重置下拉菜单。

最佳答案

您需要关闭“自动完成”选项 - 这会告诉浏览器您不希望该字段自动完成。

这里有一个例子:http://mspeight.blogspot.com/2007/06/disable-browsers-autocomplete-on-rails.html

您也可以做同样的事情,但只需关闭特定字段的自动完成。

换句话说,表单没有刷新,因为浏览器试图通过输入客户使用的最后数据来提供帮助。您需要告诉浏览器停止尝试提供帮助。您已经提供了正确的数据。

关于ruby-on-rails - rails : Resetting form fields with page refresh,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3284654/

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