【问题标题】:Javascript if box checkedJavascript 如果复选框被选中
【发布时间】:2011-01-16 16:22:17
【问题描述】:

我有这个表格用于添加视频。现在,有一个“标题”输入字段,如果您按下复选框“试用”,我希望它消失。我应该如何在 JS 中做到这一点。我使用 jquery。

【问题讨论】:

  • 为什么这被否决了?再次投票。
  • @questzen:因为问题中提供的细节很少,也没有代码。 OP以“为我做这个”的方式询问。见:stackoverflow.com/questions/2260888/javascript-if-box-checked
  • @Ether:同意,但如果没有反馈,人们将如何从错误中吸取教训?

标签: javascript jquery field


【解决方案1】:

你可以只写在 document.ready 函数里面。

$("#chkboxId").clicked(function(){
  if($(this).attr("checked"))
    $("#title").hide();
  else
    $("#title").show();
}); 

【讨论】:

  • 由于我相信 OP(以及任何人)在实践中希望/需要对显示进行更灵活的控制,我建议在元素样式上使用 toggleClass('removed', $this.checked)操作,其中 'removed' 是一个带有 display:none 的 CSS 类。
【解决方案2】:
<input type="checkbox" id="tryout" name="tryout" onclick="javascript:$('#tryout').hide();">Tryout</input>

【讨论】:

    【解决方案3】:

    假设您为这两个字段分配了正确的 id,这样的事情将起作用:

    $('#tryout').click(function () {
        $('#title').toggle(!$(this).attr('checked'));
    });
    

    【讨论】:

    • IMO 你必须通过 !($this).attr('checked') 因为我们想在选中复选框时隐藏元素,并且在使用切换时,false 值隐藏元素。第二件事,我们不必用 jQuery 对象包装它来获取检查值。只需使用 this.checked。
    • 确实应该否定切换的条件。第二件事:你不必这样做,但我更喜欢保持这种状态。我不喜欢将 jQuery 代码与“纯”JS DOM 操作混合在一起。
    • 我不能让它工作?当我按下复选框时它不会隐藏
    • 您确定两个选择器都匹配您页面中的正确元素吗?
    • 是的,带有:
      试用
      当我勾选复选框时,没有任何反应。当我也删除支票时什么都没有..
    猜你喜欢
    • 1970-01-01
    • 2016-03-04
    • 1970-01-01
    • 2013-03-20
    • 2011-09-19
    • 1970-01-01
    • 1970-01-01
    • 2016-06-11
    • 2016-09-04
    相关资源
    最近更新 更多