嗨,我是 JavaScript 新手。
我有一个可以向下滑动其他输入的复选框,我想保持该复选框处于选中状态,并且如果选中输入复选框,刷新页面后会显示其他输入
javascript:
function validateSitec(){
if (document.getElementById('sitecheck').checked){
$('#sitecheck').prop('checked', true);
$('#closedmsg').slideDown();
}else{
$('#closedmsg').slideUp();
$("#sitecheck").removeProp("checked").checkboxradio("refresh");
}
}
这是我的输入:
<label for="sitecheck">
<span style="font-weight:bold;">close site+ msg:</span>
</label>
<input name="" type="checkbox" id="sitecheck" onclick="validateSitec()" /><span style="font-weight:bold;">click to activate msg</span><br>
<input type="text" name="closedmsg" id="closedmsg" style="width:440px;height:120px;display:none;" value="enter closed msg.."/>
我希望如果选中则保持选中状态..刷新页面后不会更改,然后在取消选中时恢复正常并在刷新页面时取消选中..
我应该使用 php 来使其在使用 javascript 检查后不会改变吗?
已编辑:
感谢大家的帮助 感谢:雷永林。
任何喜欢使用它的人的工作代码:
首先下载: https://github.com/carhartl/jquery-cookie
然后使用这个代码,效果很棒:
JavaScript:
<script type="text/javascript">
function validateSitec(){
if (document.getElementById('sitecheck').checked){
$('#sitecheck').prop('checked', true);
$('#closedmsg').slideDown();
$.cookie("cookieChecked", "#sitecheck");
}else{
$('#closedmsg').slideUp();
$("#sitecheck").removeProp("checked");
$.cookie("cookieChecked","");
}
}
$(function(){
var cookieChecked = $.cookie("cookieChecked");
if(cookieChecked){
$('#sitecheck').prop('checked', true);
$('#closedmsg').show();
}else{
$("#sitecheck").removeProp("checked");
$('#closedmsg').hide();
}
})
</script>
html 输入:
<label for="sitecheck">
<span style="font-weight:bold;">close site temp:</span>
</label>
<input name="" type="checkbox" id="sitecheck" onclick="validateSitec()" /><span style="font-weight:bold;">close site and add message</span><br>
<input type="text" name="closedmsg" id="closedmsg" style="width:440px;height:120px;display:none;" value="<?php echo $data['csitemsg']; ?>" />
这个工作完美,再次感谢大家。
最佳答案
您可以使用cookie来维护您在页面刷新时的数据。我注意到您在代码中使用了 JQuery。这是一个 JQuery-Cookie
插件,可让您使用 cookie 跨页面刷新管理数据。
https://github.com/carhartl/jquery-cookie
转到使用部分,您将了解如何通过插件轻松创建、读取、删除和设置过期。
关于php - javascript在刷新页面后保持复选框选中状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18247264/