所以我正在构建一个混合应用程序,它正在使用一个引导模式用于'条款和条件',我有一个复选框,提示用户确认他们已阅读并同意条件。我的代码目前:在页面加载时加载模态,允许复选框被选中,允许模态被关闭,然后允许用户与页面交互,你可以前进并返回到模式打开的页面,然后再次加载,但这次复选框保持选中状态,表明cookie正确存储在会话中,但我希望JavaScript检查复选框是否已选中,如果返回true则隐藏模态,用户不会如果他们已经同意,就需要一遍又一遍地阅读。这是我目前的代码:
function ModalShow(){
// When the user checks the checkbox...
localStorage.setItem('checkbox', 'true');
// When a user visits the page...
var checkbox = localStorage.getItem('checkbox');
if ('checkbox'.checked == 'true') {
$('#myModal').modal('hide')
} else {
$('#myModal').modal('show')
}
}
// html
<div class="modal-footer">
<p>usual terms and conditions acceptance blah.</p><input id="checkbox" type="checkbox" class="agreement" required>
<input type="submit" class="modal-button btn" data-dismiss="modal" value="Submit">
</div>
</div>
感谢您的帮助:)
答案 0 :(得分:0)
此行看起来有问题
if('checkbox'.checked =='true'){
您可能需要像
一样编写此行if(checkbox === 'true') {
由于checkbox
是localstorage返回的值。在您的代码中,'checkbx'.checkbox
只是意味着您正在访问字符串“复选框”的checkbox
属性,这不是预期的。 (无论如何,String对象上没有.checkbox属性)。