我有一个"设置"我的网站中的页面,我希望用户能够在设置页面中选中或取消选中复选框。复选框'然后应该在用户登录时加载状态。
我的想法是为每个复选框分配ID,如下所示:
<input type="checkbox" id="chk1" data-col='column1' value="0"/>
<input type="checkbox" id="chk2" data-col='column2' value="0"/>
然后使用jQuery在&#34; SAVE SETTINGS&#34;上设置已检查函数的每个值。按钮:
$( "input:checkbox" ).each(function() {
if $(this).prop('checked'){
$(this).prop('value','1')
}
});
然后在我的MySql表中为每个复选框添加一列,然后通过ajax / php将值(1或0)发送到我的数据库。
然后当用户登录时,我可以获取每列的值(1或0),然后根据该值,我可以设置检查状态。
这是一个很好的方法吗?如果有更简单的解决方案或方法,我想确保我不会走错路。
答案 0 :(得分:-1)
假设$ query_array是数据库查询的容器。由于你在帖子的标签中包含了php,你可以在输入中插入一个php标签(假设文件也是php):
<input type="checkbox" id="chk1" data-col='column1' value="<?php echo $query[0][col_name];?>"/>
^上面的0可能是一个id,col_name是包含0/1的列名
编译时,它应该类似于:
<input type="checkbox" id="chk1" data-col='column1' value="0"/>
答案 1 :(得分:-1)
除了使用jquery之外,为什么不用渲染已经设置了值的复选框:
<input type="checkbox" id="chk1" data-col='column1' value="<?php echo $chk1?>" <?php echo $checked?>/>
修改强>
如果你想保留它只有HTML,你可以将状态存储在JSON中(其中属性名称是chekbox的id及其值的状态)并循环显示为:
$.each(jsonChkbxValues, function(index, val) {
var elem = $('#' + index);
elem.prop('value', val);
if (val) {
elem.attr('checked', 'checked');
}
});