javascript - 如果更改了隐藏输入,则更新变量

标签 javascript jquery

首先我有一个隐藏的输入

<input type="hidden" id="hiddeninp" value="0">

当我点击这个 div 时,隐藏输入的值需要改变。 (示例 1)

<div id="inputvalue">change input value to 1</div>

我有 2 个额外的 div(不显示)

<div style="display:none" id ="div0">div 1</div>
<div style="display:none" id ="div1">div 2</div>

现在,当我点击 <div id="inputvalue"></div>隐藏的输入值必须以 1 为单位进行更改。

$("#inputvalue").click(function() {
  $("#hiddeninp").val(1);
});

隐藏输入值改变后,我要显示什么<div id ="div1"></div>并隐藏 <div id ="div0"></div> (当隐藏输入值为 0 时反之亦然)

var myvar = $("#hiddeninp").val();

if (myvar == 0) {
  $("#div1").hide();
  $("#div0").show();
} else {
  $("#div0").hide();
  $("#div1").show();
}

https://jsfiddle.net/e8a3ewj0/5/

最佳答案

我将我的答案作为答案而不是评论放在此处,以便我可以向您展示代码的外观。

您必须在点击事件函数中放置带有隐藏和显示的 if 语句。因为现在它只在页面呈现时执行 if 语句。当您将它放在单击事件函数中时,每次单击 div 时都会执行代码。这是必要的,因为您必须在更改后检查该值。

你的代码会变成这样

    $("#inputvalue").click(function() {
        $("#hiddeninp").val(1);

        var myvar = $("#hiddeninp").val();

        if (myvar == 0) {
          $("#div1").hide();
          $("#div0").show();
        } else {

          $("#div0").hide();
          $("#div1").show();
        }
    });

关于javascript - 如果更改了隐藏输入,则更新变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41567828/

相关文章:

javascript - jQuery 全局对象在函数内不起作用

javascript - Internet Explorer 背景在 float 元素的容器上重复

javascript - 如何找到等待 promise 的 JavaScript 代码

jquery - 我怎样才能使用 jquery 更改仅单击链接的背景颜色

javascript - Twitter Bootstrap : How do I align section in navbar to right?

javascript - VueJS 方法返回 "Native Code"消息

jquery - 如何使用ajax在asp.net中发布表单数据

javascript - 无论如何,要在 doc.ready 事件之前将 JS 注入(inject) iframe 中?

javascript - 使用 Jquery 解决所有 Promise 后执行代码

javascript - 替代一百万个 IF 语句