Jquery 如何根据两个是/否无线电选择将值传递到隐藏字段

Jquery 如何根据两个是/否无线电选择将值传递到隐藏字段,jquery,forms,radio-button,Jquery,Forms,Radio Button,我们有一个包含两个是/否问题的表格: 问题1:是/否 问题2:是/否 提交表单时,我们希望根据以下四种情况向隐藏字段leadSource传递一个值: Q1=是;Q2=是隐藏的;字段名leadSource value=A Q1=是;Q2=无隐藏;字段名leadSource值=B Q1=否;Q2=是隐藏的;字段名leadSource value=C Q1=否;Q2=无隐藏;字段名leadSource值=D 我如何在jQuery中编码这四种不同的场景,以便它将值传递给隐藏字段 <form

我们有一个包含两个是/否问题的表格:

问题1:是/否

问题2:是/否

提交表单时,我们希望根据以下四种情况向隐藏字段leadSource传递一个值:

Q1=是;Q2=是隐藏的;字段名leadSource value=A Q1=是;Q2=无隐藏;字段名leadSource值=B Q1=否;Q2=是隐藏的;字段名leadSource value=C Q1=否;Q2=无隐藏;字段名leadSource值=D 我如何在jQuery中编码这四种不同的场景,以便它将值传递给隐藏字段

    <form id="addLeadSource">
    <input type="hidden" name="leadSource" value="" id="leadSource" class="leadSource">

    <div class="form-group">
     <label class="labeltext">Would you say yes or no to this first question?</label><br>
     <div class="form-check-inline">

      <label class="Q1YesLabel">
      <span class="radiotextsty">Yes</span>
      <input type="radio" class="Q1Yes" name="Q1" value="Yes" id="Q1Yes" required>
      <span class="checkmark"></span>
      </label>        
      <label class="Q1NoLabel"><span class="radiotextsty">No</span>
      <input type="radio" name="Q1" value="No" id="Q1No" required>
      <span class="checkmark"></span>
      </label>
      </div>
     </div>

     <div class="form-group" id="Q2">
     <label class="labeltext">How about this one?</label><br>
     <div class="form-check-inline">

     <label class="Q2YesLabel"><span class="radiotextsty">Yes</span>
     <input type="radio" class="directly_sourced" name="directly_sourced" value="Yes" required>
     <span class="checkmark"></span>
     </label>        
     <label class="Q2NoLabel"><span class="radiotextsty">No</span>
     <input type="radio" name="directly_sourced" value="No" required>
     <span class="checkmark"></span>
     </label>
     </div>
     </div>

     <button type="submit" class="btn btn-primary">Submit</button>

     </form>

    $(document).ready(function() {
$('input[type="radio"]').click(function() {
       if($(this).attr('id') == 'Q1No') {
            $('#Q2').show();           
       }
   });
        });

      $(document).ready(function() {
             $('input.ZoomInfo_sourced[type=radio]').change(function() { //change event by class
              if (this.value == 'Yes - ZoomInfo Sourced') {
                  $(this.ClassName[type=hidden]).val("Zoominfo - Seller");
                  alert("Zoominfo - Seller");
              }
              else if (this.value == '1') {
                 $(this.source[type=hidden]).val("Yes");
              }
          });
        });

$(document).ready(function() {
    $("#addLeadSource").submit(function(event){
  var source = document.getElementById("leadSource").innerText;
    alert(source);
    });
});

我从这里开始了一段对话:

可能有更好的方法来写这个,但我认为这样做很容易理解逻辑

函数测试{ 如果$'[name=Q1]:选中“.val=”是“{ console.log'q1是yes'; 如果$'[name=directly\u sourceed]:选中'.val=='Yes'{ console.log'q2是yes'; 返回“A”; }否则{ 控制台。日志'q2为否'; 返回“B”; } }否则{ console.log'q1为否'; 如果$'[name=directly\u sourceed]:选中'.val=='Yes'{ console.log'q2是yes'; 返回“C”; }否则{ 控制台。日志'q2为否'; 返回“D”; } }
} 以下是我想出的对我有效的解决方案:

    $("#theForm").submit(function(event) {

      if ($('#Q1Yes').is(':checked') && $('#Q2Yes').is(':checked')) {
        $("#source").val("Scenario 1 and 2");

      } else if ($('#Q1Yes').is(':checked') && $('#Q2No').is(':checked')) {
        $("#source").val("Scenario 1 and 2");

      } else if ($('#Q1No').is(':checked') && $('#Q2Yes').is(':checked')) {
        $("#source").val("Scenario 3");

      } else {
        $("#source").val("Scenario 4");
      }

    });

下面的答案解决了你的问题吗?它帮助我找到了答案。谢谢你的发帖。