【问题标题】:Using checkbox value inside conditional statements in JavaScript在 JavaScript 的条件语句中使用复选框值
【发布时间】:2017-06-07 09:34:46
【问题描述】:

我正在使用 HTML 进行问卷调查。我需要获取正在检查的复选框的值。下一页(L2)上的问题将基于我点击“提交”时仅在复选框上选中的问题。

我在获取和存储复选框的值以及稍后将其用于 IF else-If else 语句时遇到问题。阅读了很多在线资料,但我看不到任何启示。任何帮助都可以...这是普通复选框的代码。

<html> 
    <head> 
    </head>
    <body>
        <script>
            var vg = document.getElementId("VideoGame").checked;
            var te = document.getElementId("Text").checked;
            var an = document.getElementId("Animals").checked;
            var sp = document.getElementId("Sports").checked;
            var lo = document.getElementId("Logo").checked;
        </script>
        <form action="L2.html">   
            Check the box if applicable: <br>
            <input type="checkbox" name="Q1" id="VideoGame"> The image is a Video Game. 
            <br>
            <input type="checkbox" name="Q1" id="Text"> The image contains text. <br>
            <input type="checkbox" name="Q1" id="Animals"> The image is about animals. 
            <br>
            <input type="checkbox" name="Q1" id="Sports"> The image is about sports. 
            <br>
            <input type="checkbox" name="Q1" id="Logo"> The image contains a logo. <br>
            <input type="submit" value="NEXT"> 
        </form>
    </body>
</html>

【问题讨论】:

  • 你是在 localhost 还是 server 中运行代码,还是只是简单的 html?
  • 我先在纯 html 中尝试它,但计划将它连接到服务器。

标签: javascript jquery html if-statement


【解决方案1】:

您可以简单地将onclick 添加到每个input-元素:

<input type="checkbox" name="Q1" id="VideoGame" onclick="refreshValues()" />

refreshValues()-函数可能如下所示:

function refreshValues() {
    var vg = document.getElementId("VideoGame").checked;
    var te = document.getElementId("Text").checked;
    var an = document.getElementId("Animals").checked;
    var sp = document.getElementId("Sports").checked;
    var lo = document.getElementId("Logo").checked;
}

【讨论】:

  • 为了更好地建议使用onchange 而不是onclick 复选框
【解决方案2】:

尝试将用户答案存储在 cookie 中,这可能会有所帮助。 参考:https://developer.mozilla.org/en-US/docs/Web/API/Document/cookie

【讨论】:

    【解决方案3】:
    if($("#your check box input field id").is(":checked")){
    local jquery variable="yes";
    }
    else{
    m11="no";
    }
    

    试试这个,这是 jquery 代码,它可以帮助你将值存储在 db 中。如果你只是想设置条件,你可以看到我在条件中使用它的方式。希望它有帮助。如果你仍然感到困惑,请看这个。 saving values of toggle(yes or no) in database php。复选框和切换的工作方式相同。

    【讨论】:

      【解决方案4】:

      我会考虑将数据存储在 LocalStorage 或 SessionStorage 中,然后在下一页使用 localStorage.set('key', 'item') 和 localStorage.get('key'); 检索它;

      https://developer.mozilla.org/en/docs/Web/API/Window/localStorage https://developer.mozilla.org/en/docs/Web/API/Window/sessionstorage

      如果您需要存储具有多个输入的对象,请考虑使用 JSON stringify。

      Storing Objects in HTML5 localStorage

      【讨论】:

      • 我正在考虑使用会话存储。谢谢!对不起,我没有足够的声誉来投票。 :)
      猜你喜欢
      • 1970-01-01
      • 2018-04-16
      • 2020-11-06
      • 1970-01-01
      • 2015-08-16
      • 2014-07-20
      • 2017-03-31
      • 2011-09-25
      • 1970-01-01
      相关资源
      最近更新 更多