保存状态单选按钮javascript html

Save state radio button javascript-html

本文关键字:html javascript 单选按钮 状态 保存      更新时间:2023-09-26

我正在尝试执行一个程序,保存单选按钮的状态并进行检查。这是我的代码,但我不知道它错在哪里。请帮帮我

<script>
function saveState(){
   var ans1 = document.getElementById('grupo1');
   if (ans1.value == 1)
   {
       ans1.setAttribute("checked","checked");
       ans1.checked = true;
   }
</script>
<input type="radio" name="group" id="grupo1" value="1"> One
<input type="radio" name="group" id="grupo2" value="0"> Two
<input type="submit" onclick="saveState()" value="update">

试试这个:

<script>
    function saveState(){
        var ans1 = document.querySelector('input[name="group"]:checked').value;
        if (ans1.value == 1){
              ans1.setAttribute("checked","checked");
              ans1.checked = true;
        }
   }
  </script>

在放置方括号的方法中保持一致有助于防止出现这种情况。

例如,如果将函数、循环、条件(if)语句等的左括号与条件本身放在同一行(就像上面在函数声明中所做的那样),则只需查找右括号。

另一方面,如果你把左括号和右括号都放在它们自己的行上,你的代码将更加垂直对称,这使得在处理较大的代码块时更容易发现缺失的括号。

你应该看看这篇关于这个特殊问题的文章:http://encosia.com/in-javascript-curly-brace-placement-matters-an-example/

你可能是这个意思?

除非grupo1按钮可以更改值,否则您的代码没有多大意义

下面的脚本假设您在的某个地方有一个标准cookie脚本

<script>
window.onload=function() {
  if (getCookie("grupo1")=="true") {
   document.getElementById('grupo1').click(); 
  }
  // either this
  document.getElementById('grupo1').onclick=function() {
     setCookie("grupo1","true")
  }
  // or this - depending on when you want to save the state
  document.getElementById("form1").onsubmit=function() {
    setCookie("grupo1",document.getElementById('grupo1').checked?"true":"false");
  }
}
</script>
<form id="form1">
<input type="radio" name="group" id="grupo1" value="1"> One
<input type="radio" name="group" id="grupo2" value="0"> Two
<input type="submit" value="update">
</form>