选择A单选按钮以在jquery/javascript中添加另一个输入



我正试图通过将所学付诸实践来学习jQuery。这就是我的编码问题。

我有两个按钮,一个是"是",一个"否"。选择"是"单选按钮后,将显示一个新的文本输入。

我下面的jquery:

$(document).ready(function(){ 
    $("#many").hide();
var isChecked = $("#dform input" ).change(function() {
    $("input[name=question]:checked", "#dform").val();  
  if(isChecked == yes){
    $("#many").show();
  }else {$("#many").hide();}
   });
});

我的代码笔

我用这个答案在一个变量中添加了value函数,然后在一个条件语句中使用它。我将值$("input[name=question]:checked", "#dform").val();放在警报中,以确保附加到"是"单选按钮的值已被捕获。然而,当我把.val()函数放在一个变量中并在条件语句中使用时,它就不起作用了。

我是否正确设置了Jquery?

试试这样的

<script>
$(document).ready(function () {
    $("#many").hide();
    $("input[name='question']").click(function () {
        if ($('#yes').is(':checked')) { $("#many").show(); } 
        else { $("#many").hide(); }
    });
});
</script>

您有点偏离轨道。您不需要命名onChange处理程序(var isChecked...),我认为这会让您感到困惑。我会尝试一些类似的东西:

$(document).ready(function(){ 
  $("#many").hide();
  $("#dform input[name=question]").change(function() {
    if ($('#dform input[name=question]:checked').attr('value') == 'yes') {
      $("#many").show();
    } else {
      $("#many").hide();
    }
  });
});

尝试这个来隐藏和显示元素

$(document).ready(function(){ 
$("#many").hide();
 $("#dform input" ).change(function() {
     $("#many").show();
  });
  $("#no").change(function(){
    $("#many").hide();
  })
});

将html更改为:

<input type="radio" name="question" id="no" value="no" checked>

有不同的方法可以做到这一点,简单的方法是使用Jquery addClass和Remove-class方法

**HTML**
<h4>
Click on button to toggle
</h4>
<div style="padding:10px;">
<button class="show btn">Show</button>
<button class="hide btn">Hide</button>
</div>
<div>
<input type="text" id="name" class="displayN"/>
</div>

Jquery

$(document).ready(function(){
$(".show").click(function(){
    $("#name").addClass('displayB').removeClass("displayN");
});
$(".hide").click(function(){
    $("#name").addClass("displayN").removeClass("displayB");
})
});

工作示例:https://jsfiddle.net/mshyam83/u3wfpznn/

请将您的js替换为:

$(document).ready(function(){ 
    $("#many").hide();
    $("#dform input" ).change(function() {
    var val = $("input[name=question]:checked", "#dform").val();  
     if (val == "yes") {
       $("#many").show();
     } else {
       $("#many").hide();
     }
   });
});

我确信它可以被更多地清理,但无论如何它还是有效的。jQuery设置很好。代码笔:http://codepen.io/anon/pen/GqxGmp

相关内容

  • 没有找到相关文章

最新更新