我有一个表格,上面有20个单选按钮。如果页面上有错误(我会刷新页面),我需要存储单选按钮的状态。我设法让它工作50%。但是,如果我在第二次刷新时选择不同的单选按钮,它仍将保留第一次提交的状态。
这是我的代码:
var x= $("input[id^='question-']");
$(x).click(function(){
localStorage['radios'] = this.checked;
});
$(x).prop('checked', localStorage['radios'] == 'true');
非常感谢任何帮助!
答案 0 :(得分:0)
我认为刷新页面后获取值的唯一形式是在发送表单后通过POST或GET发送信息。可以使用PHP脚本来处理表单并进行验证。
如果您有任何疑问,可以在此处查看how to catch information of the forms
答案 1 :(得分:0)
您的代码看起来只是一次又一次地覆盖相同的值而不管它的输入是什么,并且还应该使用更改事件而不是单击。尝试类似(未经测试的):
var $x = $("input[id^='question-']");
// Set localstorage on change event per radio button
$x.on('change', function(){
localStorage[$(this).attr('name')] = this.checked;
});
// Check all radio buttons on page load against localStorage
$x.each(function(){
$(this).prop('checked', localStorage[$(this).attr('name')] == 'true');
}