javascript - 3 文本字段依赖于使用 jquery 的单选按钮

标签 javascript jquery

我想创建 3 个依赖于单选按钮的文本字段。当用户单击单选按钮的特定值时,文本字段的出现取决于用户的选择,反之亦然。

$(document).ready(function() {
  $("input:radio[name=\'article\']").change(function() {
    if (this.value == '1' && this.checked) {
      $("#nmb").show();
    }
    
    else if(this.value == '2' && this.checked) {
      $("#nbc").show();
    }

    else if(this.value == '3' && this.checked) {
      $("#crdb").show();
    } else {
      $("#crdb").hide();
      $("#nmb").hide();
      $("#nbc").hide();
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/js/bootstrap.min.js"></script>
<input type="radio" name="article" value="1"> NMB Bank <input type="radio" name="article" value="2">NBC Bank <input type="radio" name="article" value="3"> CRDB Bank <br/><br/>

<div id="nmb">Account Number: <input type="text" name="number" maxlength="11"><br><br> </div>
<div id="nbc">Account Number: <input type="text" name="number" maxlength="13"><br><br> </div>
<div id="crdb">Account Number: <input type="text" name="number" maxlength="14"><br><br> </div>

最佳答案

这是你要找的吗?

$(document).ready(function() {
  $("input[name='article']").change(function() {
    $(".AccountHolder").hide();
    if ($(this).val() == 1) {
      $("#nmb").show();
    } else if (this.value == 2) {
      $("#nbc").show();
    } else if (this.value == 3) {
      $("#crdb").show();
    }
  });
});

请注意,没有理由使用 this.checked

演示

$(document).ready(function() {
  $("input[name='article']").change(function() {
    $(".AccountHolder").hide();
    if ($(this).val() == 1) {
      $("#nmb").show();
    } else if (this.value == 2) {
      $("#nbc").show();
    } else if (this.value == 3) {
      $("#crdb").show();
    }
  });
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.1.3/js/bootstrap.min.js"></script>
<input type="radio" name="article" value="1"> NMB Bank <input type="radio" name="article" value="2">NBC Bank <input type="radio" name="article" value="3"> CRDB Bank <br/><br/>

<div id="nmb" class="AccountHolder">Account Number: <input type="text" name="number" maxlength="11"><br><br> </div>
<div id="nbc" class="AccountHolder">Account Number: <input type="text" name="number" maxlength="13"><br><br> </div>
<div id="crdb" class="AccountHolder">Account Number: <input type="text" name="number" maxlength="14"><br><br> </div>

关于javascript - 3 文本字段依赖于使用 jquery 的单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52831861/

相关文章:

jquery - 如何在克隆中获取单选按钮更改事件上文本框的值?

javascript - Web P2P/WebRTC 无服务器信令 : is it possible to signal successfully without generating a response?

javascript - JS中对象的频率排序数组,如果频率匹配则根据对象属性排序

带动画的 jQuery 模式窗口?

javascript - 按钮 onClick 阻止焦点在另一个表单字段上?

javascript - 对不同的图像重复 onclick 功能

javascript - jQuery $(this) 伪选择器

php - 你将如何在 php 5.4 中实现一个基本的文件上传进度条?

javascript - 在更改选择字段时通过 AJAX 方法提交表单

javascript - 用任意 html 替换 ExtJS 组件的内容