如何将两个javascript函数与具有条件的第三个函数合并?

如何将两个javascript函数与具有条件的第三个函数合并?,javascript,html,Javascript,Html,我开始在js,我有合并两个功能的问题。我想用条件生成第三个函数,当标记了复选框并标记了reCAPTCHA时,只有按钮是enable。默认情况下,我将按钮设置为禁用。 以下单个功能正在工作: function clauseValid(elem) { document.getElementById("sendBtn").disabled = false; return true; }; function captchaValid () { docume

我开始在js,我有合并两个功能的问题。我想用条件生成第三个函数,当标记了复选框并标记了reCAPTCHA时,只有按钮是enable。默认情况下,我将按钮设置为禁用。 以下单个功能正在工作:

  function clauseValid(elem) { 
  document.getElementById("sendBtn").disabled = false;
  return true;
  };

  function captchaValid () {
  document.getElementById("sendBtn").disabled = false;
  return true;
  };


  <input type="checkbox" name="chkbx" id='#ID#' value="#seq_claim_id#"  onClick="clauseVlid(this)">

  <div class="g-recaptcha" data-sitekey="*****..." id="ckecCaptcha" type="checkbox" data-callback="captchaValid"></div>

使用变量跟踪每个条件的当前状态:

let isClauseValid, isCaptchaValid;

function clauseValid(elem) {
  isClauseValid = elem.checked;
  setButton();
}

function captchaValid() {
  isCaptchaValid = true;
  setButton();
}

function setButton() {
  document.getElementById("sendBtn").disabled = !isClauseValid || !isCaptchaValid;
}

注意:请务必纠正HTML
onclick
属性中的拼写错误。

您能解释一下到底是哪里出了问题吗?您有
onclick=“clauseVlid(this)”
但函数名为
clauseValid()
。另外,您在哪里调用
CheckTest()
?@Lemondoge我是说,当满足两个条件时(两个标记的字段-一个复选框-第二次重新检查)@kmoser我认为这是错误的,这就是为什么我问您如何做:)
let isClauseValid, isCaptchaValid;

function clauseValid(elem) {
  isClauseValid = elem.checked;
  setButton();
}

function captchaValid() {
  isCaptchaValid = true;
  setButton();
}

function setButton() {
  document.getElementById("sendBtn").disabled = !isClauseValid || !isCaptchaValid;
}