1

我想将单选按钮值放在状态 div 中。状态 div 的文本应该根据用户选择的单选按钮而改变。我在下面使用的代码不起作用。请帮忙。谢谢!

HTML 代码:

 <form action="">
     <input type="radio" name="sex" value="male">Male<br>
     <input type="radio" name="sex" value="female">Female<br>
     <div id="status"></div>
  </form>​

JS代码:

 $(document).ready(function () {
    RadioStatus="";

    $("input[type='radio']:checked").each( function()
    { 
        if ($(this).attr('checked');)
              RadioStatus=$(this).val();
              $("#status").text(RadioStatus);
        });

    $("input[type='radio']").change(function()  
     {
             RadioStatus= $('input[type='radio']:checked').val()
            $('#status').text(RadioStatus);        
    });
});
4

7 回答 7

6

这应该有效:

$("input[type='radio']").click(function() {
    $('#status').text($(this).val());
});
于 2012-10-23T10:48:32.930 回答
1

对您的代码进行一些小的调整使其正常工作:

$(document).ready(function () {
    RadioStatus="";

    $("input[type='radio']:checked").each( function()
    { 
        if ($(this).attr('checked'))
              RadioStatus=$(this).val();
              $("#status").text(RadioStatus);
        });

    $("input[type='radio']").change(function()  
     {
             RadioStatus= $('input[type="radio"]:checked').val();
            $('#status').text(RadioStatus);        
    });
});​

见:http: //jsfiddle.net/f6Tru/

..或者你可以通过使用techfoobar的真正简化它:

$(document).ready(function () {
    $("input[type='radio']").click(function() {
        $('#status').text($(this).val());
    });
});​

反而。见:http: //jsfiddle.net/RrhYM/

于 2012-10-23T10:49:51.923 回答
1

你的单引号有问题'

改变:

RadioStatus= $('input[type='radio']:checked').val()

到:

RadioStatus= $('input[type="radio"]:checked').val()
于 2012-10-23T10:50:32.103 回答
1

试试这个代码

$('input[name ^=sex]').click(function() {
        $('#status').text($(this).val());
});
于 2012-10-23T10:50:59.660 回答
1

只需使用change来确定选择了一个单选按钮。然后使用htmltext将所选单选按钮的值附加到您的<div id="status">.

$(document).ready(function () {
    $('input[type=radio]').on("change", function() {
        $('#status').html($(this).val());
        // Alternative
        // $('#status').text($(this).val());
    });
});​

演示

于 2012-10-23T10:51:21.390 回答
1

演示

$("input:radio").click(function() { //use $("input:radio[name='sex']").click if more radio buttons there
  $('#status').text($(this).val());
});​
于 2012-10-23T10:51:36.603 回答
0

您可以使用以下 JS 代码来实现:

$("input").click(function(e){
     var selectedValue = e.currentTarget.value;                 
    $('#status').html(selectedValue );       
});

​</p>

​</p>

于 2012-10-23T11:03:41.727 回答