如何使用jQuery基于其他两个单选按钮启用或禁用单选?

开瓶器

我有3个单选按钮

<div>
<input class="crm-form-radio" value type="radio" id="CIVICRM_QFID_is_recur_radio" name="is_recur_radio">
<label for="CIVICRM_QFID_is_recur_radio">Single</label>
</div>

<div>
<input class="crm-form-radio" value="month" type="radio" id="CIVICRM_QFID_month_is_recur_radio" name="is_recur_radio">
  <label for="CIVICRM_QFID_month_is_recur_radio">Month</label>
</div>

<div>
<input class="payment_processor_gocardless crm-form-radio" value="5" type="radio" id="CIVICRM_QFID_5_payment_processor_id" name="payment_processor_id" >
<label for="CIVICRM_QFID_5_payment_processor_id">Payment</label>

</div>

我期望的结果是,当我选择“单次付款”时,应该禁用付款”单选。

当我选择“每月”时应启用付款”单选

这是我尝试过的并且能够成功禁用支付单选,但是在选择“每月”时无法启用它任何帮助,将不胜感激。谢谢

$('input[name=is_recur_radio][id=CIVICRM_QFID_is_recur_radio]').change(function(){
if ($("input[name=is_recur_radio]:checked").attr("id")=="CIVICRM_QFID_is_recur_radio") {
    $('input[name=payment_processor_id][value=5]').prop("disabled", true);
    }
  });


$('input[name=is_recur_radio][value=month]').change(function(){
if ($("input[name=is_recur_radio]:checked").attr("value")=="CIVICRM_QFID_month_is_recur_radio") {
    $('input[name=payment_processor_id][value=5]').prop("disabled", false);
    }  
});
斯瓦蒂

由于两个无线电名称即:monthly and single相同,因此您仅可以使用一个change事件处理程序并根据情况更改值。

演示代码

$('input[name=is_recur_radio]').change(function() {
  //check for id and add or remove disabled
  $("input[name=is_recur_radio]:checked").attr("id") == "CIVICRM_QFID_is_recur_radio" ? $('input[name=payment_processor_id][value=5]').prop("disabled", true) : $('input[name=payment_processor_id][value=5]').prop("disabled", false);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
  <input class="crm-form-radio" value type="radio" id="CIVICRM_QFID_is_recur_radio" name="is_recur_radio">
  <label for="CIVICRM_QFID_is_recur_radio">Single</label>
</div>

<div>
  <input class="crm-form-radio" value="month" type="radio" id="CIVICRM_QFID_month_is_recur_radio" name="is_recur_radio">
  <label for="CIVICRM_QFID_month_is_recur_radio">Month</label>
</div>

<div>
  <input class="payment_processor_gocardless crm-form-radio" value="5" type="radio" id="CIVICRM_QFID_5_payment_processor_id" name="payment_processor_id">
  <label for="CIVICRM_QFID_5_payment_processor_id">Payment</label>

</div>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用JQuery基于单选按钮启用/禁用文本框

使用jQuery启用禁用的单选按钮列表

如何禁用按钮或基于角度单选按钮启用

如何仅使用jQuery使单选按钮选项依赖于其他单选按钮选择?

如何在重置其他两个的文本的同时更改选中的单选按钮元素上的文本?

如何一次仅检查一个单选按钮(其他按钮禁用)

使用jQuery基于单选按钮禁用按钮条件

jQuery基于两个单选按钮和选择选项显示和隐藏div

jQuery单选按钮如何禁用文本字段而不影响其他

如何基于其他单选按钮组值显示并向单选按钮组添加验证

禁用单选按钮后如何启用它?

仅在提供两个条件的情况下,如何启用/禁用提交按钮:检查输入单选和填充输入文本

使用js启用和禁用单选按钮

当使用JavaScript中的单个功能单击其他单选按钮时,如何禁用文本框?

基于单选按钮启用或禁用按钮在jQuery中不起作用?

两个单选按钮集-JQuery变量

如果使用 jquery 找到单选按钮字段数据和其他字段数据,则启用提交按钮

如何在每行内部有两个单选按钮的ngFor中选择单选按钮

使用jQuery通过单选启用/禁用输入

如何创建两个相关的单选按钮?

如何将两个单选按钮的值相加?

使用 vuetify 时检查两个单选按钮

禁用或启用单选按钮的Javascript

疑难解答基于单选按钮的jQuery启用/禁用文本框

禁用jQuery单选按钮

如何使用Javascript检查其他单选按钮中是否选中了特定的单选按钮?

至少单击一次其他两个按钮后,如何启用按钮?

如何使用jQuery在MVC中选择其他单选按钮时使div可见和隐藏?

单击其他单选输入时启用/禁用文本输入