Google chrome表单单选按钮在从结果页“返回”导航时重置所选值
google chrome form radio button resetting selected value upon "back"navigation from results page
我有一个从Django定义为
的表单from django.forms.widgets import RadioSelect
class SequenceInputForm(forms.Form):
sequence = forms.CharField(widget=forms.Textarea, validators=[validate_valid_dna_sequence])
organism = forms.ChoiceField(widget=forms.RadioSelect(), initial=1,choices=[(1,"Human"),(2,"Rat"),(3,"Mouse")])
django模板中的单选按钮呈现为
{{ form.organism }}
在模板上呈现一个带有简单TextBox和单选器的表单。典型的用户交互结果是序列字段中的文本和单击单选按钮。
应用程序然后返回结果在一个新的页面
现在如果用户点击"返回"按钮从结果页返回到表单。文本框中输入了数据,但单选按钮被重置为初始值。
输入值的内存不足仅在Google Chrome中出现。在Firefox和IE中使用相同的应用程序代码…表单会"记住"它的单选按钮的选择值。
当用户从Google chrome的结果页面返回时,我如何使表单记住值。
很抱歉,浏览器特定的行为给我的印象是它需要一个浏览器特定的解决方案,可能不在Django代码中。
我曾在某处读到一个解决方案是使用"html5"会话存储API来保存单选按钮的状态。这是最好/唯一的处理方法吗?
您可能喜欢使用这个库:http://garlicjs.org/
它完全符合你的要求,即使用HTML5会话存储:
Garlic.js允许您在本地自动保存表单的文本字段值,直到表单被提交。这样,你的用户不会丢失任何宝贵的数据,如果他们不小心关闭他们的标签或浏览器。
它努力为可能想要使用它的UI/UX开发人员提供一个与javascript无关的界面。只需在表单标签中添加一些data-persist="garlic",就可以开始了!
默认情况下,数据不会在提交时保存。您可以通过将data-destroy="false"
添加到表单标记来更改此选项。
相关文章:
- 导航返回的对象
- Windows phone 8和phonegap 2.7.0,HTML页面和Xaml之间的导航以及返回
- 离子无限滚动,仅在导航离开并返回页面时滚动
- jQuery Mobile弹出窗口获胜't在页面导航后显示,仅在硬刷新或返回同一页面后显示
- 带错误的Onsen UI导航:您不能提供no"ons页”;元素到“;ons导航器”;当返回第一页时
- 打开并关闭或返回(如果已经打开导航)
- 当用户关闭导航时,将其返回到页面上的原始位置
- JavaScript导航器用户代理返回"iPhone"安装iOS 10系统的iPad Pro
- 使用AngularJS/Javascript禁用仅浏览器返回按钮导航(不包括应用中的链接)
- HTML4和HTML5 -如果没有导航,我怎么知道是否有一个“返回”状态
- iOS 5 Safari中页面缓存的问题,当导航返回/卸载事件未触发时
- 手机导航"返回"连接问题
- 滚动后将导航条返回到原始位置
- 为什么导航栏返回按钮仍然用ActionConst显示.在反应式-本机-路由器-通量中替换
- event.preventDefault ();导航,同时仍允许返回&要使用的转发按钮
- React router + redux导航返回不会调用componentWillMount
- 如果在汉堡菜单中导航,点击“返回”按钮将返回主页
- Google chrome表单单选按钮在从结果页“返回”导航时重置所选值
- 在返回导航时,复选框没有被选中
- 支付导航表单php支付网关和返回php(响应返回php页面)