给定两个是/否字段,每当将字段1值选中为“是”时,如何使用JavaScript使字段2值选中为“是”?

时间:2019-12-20 13:27:14

标签: javascript jquery html if-statement checkbox

如果将字段1选中为“是”,则应将字段2选中为“是”

这是我到目前为止一直在尝试的事情:

字段1:

<div class="entire">
<div class="col3"><label class="label-right">||FIELDTAG Field1||Question15||ENDFIELDTAG||&nbsp;</label></div>
<div class="col9"><input type="radio" name="Field1" id="Question15yes" value="Yes" onclick="Check()">Yes&nbsp;<input type="radio" name="Field1" value="No" onclick="Check()">No</div>

字段2:

<div class="entire">
<div class="col3"><label class="label-right">||FIELDTAG Field2||Question16||ENDFIELDTAG||&nbsp;</label></div>
<div class="col9"><input type="radio" name="Field2" id="Question16yes" value="Yes" onclick="Check()">Yes&nbsp;<input type="radio" name="Field2" value="No" onclick="Check()">No</div>

我正在尝试像下面的这个js一样简单的东西,但是我肯定缺少一些东西。任何帮助将不胜感激!

<script language="JavaScript">    
function Check()  {
$("#Question15yes").click(function(){
     if ($(this).is(':checked'))
     {
         $("#Question16yes").val("Yes");
     }
        }
      });
    }      
</script>

3 个答案:

答案 0 :(得分:0)

确保在页面中包含JQuery。

要绑定事件,您需要等待DOMfully loaded,否则您将尝试使用尚不存在的元素。

<script language="JavaScript">    
    $(function() {
      $(".question-checkbox").click(function(){
        if ($(this).is(':checked'))
        {
          console.log($(this));
        }
      });
    });     
</script>

此外,您可能希望将JQuery选择器从ID更改为class,以便将相同的代码用于所有相似的复选框。

在输入上放置.question-checkbox类,并删除所有onclicks。

答案 1 :(得分:0)

将其用于具有类名“ example”的单个复选框:

 $('input.example').on('change', function() {
  $('input.example').not(this).prop('checked', false);
 });

答案 2 :(得分:0)

您不必每次点击都致电check。加载文档后,只需调用一次即可。

window.addEventListener("load", function(){
  $("input[type='radio']").on("click", function(){
    if($("#Question15yes").is(':checked'))
      $("#Question16yes").prop("checked", true);
    });
  });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

<div class="entire">
  <div class="col3">
    <label class="label-right">||FIELDTAG Field1||Question15||ENDFIELDTAG||&nbsp;</label>
    </div>
  <div class="col9">
    <input type="radio" name="Field1" id="Question15yes" value="Yes">
      Yes&nbsp;
    <input type="radio" name="Field1" value="No" >No
  </div>

<div class="entire">
  <div class="col3">
    <label class="label-right">||FIELDTAG Field2||Question16||ENDFIELDTAG||&nbsp;</label>
    </div>
  <div class="col9">
    <input type="radio" name="Field2" id="Question16yes" value="Yes">
    Yes&nbsp;
    <input type="radio" name="Field2" value="No">
    No
  </div>