Php 仅选择一个复选框(并取消选择rest),如果选中复选框,则显示输入字段

Php 仅选择一个复选框(并取消选择rest),如果选中复选框,则显示输入字段,php,javascript,jquery,codeigniter,checkbox,Php,Javascript,Jquery,Codeigniter,Checkbox,我有一张表格,上面有“是”和“否”两个复选框。这些一开始是未经选择的。我希望用户只选择其中一个,如果他们不想做决定,可以选择取消选择(这就是为什么我没有使用单选按钮)。选择“是”应取消选择“否”,反之亦然。我不知道该怎么做。我正在使用PHP(codeigniter)、Javascript和JQuery 其次,选择是或否后,需要显示输入字段。我有这个设置,但它切换到“onclick”操作,这意味着选择两次Yes将显示和隐藏输入字段!我希望输入字段显示是否选择了Yes(是)或No(否),如果同时取消

我有一张表格,上面有“是”和“否”两个复选框。这些一开始是未经选择的。我希望用户只选择其中一个,如果他们不想做决定,可以选择取消选择(这就是为什么我没有使用单选按钮)。选择“是”应取消选择“否”,反之亦然。我不知道该怎么做。我正在使用PHP(codeigniter)、Javascript和JQuery

  • 其次,选择是或否后,需要显示输入字段。我有这个设置,但它切换到“onclick”操作,这意味着选择两次Yes将显示和隐藏输入字段!我希望输入字段显示是否选择了Yes(是)或No(否),如果同时取消选择Yes(是)和No(否),则该字段将消失


  • 假设您的html是这样的(我想是这样的):


    希望这有帮助。干杯。

    这应该可以满足您的要求:

    $("#checkbox1").change(function() {
    
    if ($(this).attr("checked") && $("#checkbox2").attr("checked")) {
       $("checkbox2").removeAttr("checked");
    } else if ($(this).attr("checked")) {
       $("#inputfield").show();
    } else {
       $("#inputfield").hide();
    }
    });
    
    
    $("#checkbox2").change(function() {
    
    if ($(this).attr("checked") && $("#checkbox1").attr("checked")) {
       $("checkbox1").removeAttr("checked");
    } else if ($(this).attr("checked")) {
       $("#inputfield").show();
    } else {
       $("#inputfield").hide();
    }
    });
    
  • 选择其中一个作为jQuery或javascript
  • 不要认为这是某些黑客无法同时设置和发布的100%保证:)
  • 根据设置的是/否值分析$\请求数组
  • 做决定

  • 注:JQuery不适用于我的诺基亚6303c:)设备,硬编码-可以工作。。。因此,应用程序必须有两个部分。

    作为另一个选项,您可以添加一个所有部分作为
    单选按钮,
    按钮…并添加第三个,说
    none
    。因此,当用户不想做决定时,他可以单击
    none单选按钮
    表单,它包含许多行,每个行都有Yes或No选项。如果只有一行,添加一个None就可以了,但是多个决策行(默认情况下,每个决策行都选择了None)会导致糟糕的UI。除非您建议默认选中并隐藏的“无”,否则唯一的问题是复选框的“是”值和“否”值的名称相同。i、 e.name=“decision”在这两种情况下都是如此,这样我可以在提交决策时读取决策值。我不知道如果选择了“是”,如果两者都有相同的元素名,如何取消选中“否”。我不知道给他们分配一个不同的ID是不是一种方法。
    <input type="checkbox" name="decisionY" value="y" /> Yes
    <input type="checkbox" name="decisionN" value="N" /> Yes
    <input type="text" id="togglenote" name="togglenote" />
    
    $(document).ready(function(){
      $(":checkbox[name^='decision']").change(function(){
         if($(this).is(":checked")){
            $(":checkbox[name[^='decision']").attr("checked", false); //Uncheck the other
            $(this).attr("checked", true);
            $("#togglenote").show();
         }
         if($(":checkbox[name^='decision']:checked").size() == 0){
            $("#togglenote").hide();
         }
      });
    });
    
    $("#checkbox1").change(function() {
    
    if ($(this).attr("checked") && $("#checkbox2").attr("checked")) {
       $("checkbox2").removeAttr("checked");
    } else if ($(this).attr("checked")) {
       $("#inputfield").show();
    } else {
       $("#inputfield").hide();
    }
    });
    
    
    $("#checkbox2").change(function() {
    
    if ($(this).attr("checked") && $("#checkbox1").attr("checked")) {
       $("checkbox1").removeAttr("checked");
    } else if ($(this).attr("checked")) {
       $("#inputfield").show();
    } else {
       $("#inputfield").hide();
    }
    });