刚刚接触Query,实在不知道如何解决,求指教!!!问题是这样的,我在每次选择表格中的题号时,在id='Answers'的DIV中添加几个单选按钮如下:
           
$(document).ready(function(){
 $("#EOTable td").click(function() {
                num = $(this).html() - 1;
                $.post("NextTest", { index: num.toString() }, function(data) {
                    $("#Question").html((num + 1) + "." + data.QuText);
                    $("#Correct :hidden").val(data.Correct);
                    $("#Answers").html("");
                    $.each(data.AnText, function(i, n) {                  //$.each对每一次都进行如下操作----------------任晓东 
                        $("#Answers").append($("<input type='radio' name=" + num + " value=" + i + ">" + n + "</input><br/>"));
                    });
                }, "json");
                ;
            });
以上代码没问题,但是在添加之后,我怎么才能实现点击Radio按钮,并获取选中项的值
            
$("#Answers :radio").click(function() {                alert($(this).val());
            });无效。

解决方案 »

  1.   


    $("#Answers input['radio']").click(function() {                alert($(this).val());
                });貌似是这么写的,Query没用过,这个代码也没测试过
      

  2.   


    $("input[name='radio_name'][checked]").val();
      

  3.   


    $(document).ready(function(){
     $("#EOTable td").click(function() {
                    num = $(this).html() - 1;
                    $.post("NextTest", { index: num.toString() }, function(data) {
                        $("#Question").html((num + 1) + "." + data.QuText);
                        $("#Correct :hidden").val(data.Correct);
                        $("#Answers").html("");
                        $.each(data.AnText, function(i, n) {                  //$.each对每一次都进行如下操作----------------任晓东 
                            $("#Answers").append($("<input type='radio' name=" + num + " value=" + i + ">" + n + "</input><br/>"));
                        });
                    }, "json");
                    ;            $("#Answers :radio").click(function() {                alert($(this).val());
                });            });
    你把第二段代码放进第一段代码里面试试
      

  4.   

    楼上三位的方法,我都试过了,无效````,我猜测是因为,.append()方法添加的Radio按钮无法再在document.ready()中的方法中取值.
      

  5.   

    你append之后马上给他指定一个click事件应该是可以的啊,例子:<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
     <HEAD>
      <TITLE> New Document </TITLE>
      <META NAME="Generator" CONTENT="EditPlus">
      <META NAME="Author" CONTENT="">
      <META NAME="Keywords" CONTENT="">
      <META NAME="Description" CONTENT="">
      <script type="text/javascript" src='http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js'></script>
      <script type="text/javascript">
    $(document).ready(function(){
    $("#EOTable").click(function() {
    var num="test";
                    $("#Answers").append($("<input type='radio' name='num' value='4'>ert</input><br/>")); $("#Answers :radio").click(function() {
          alert($(this).val());
         });
             });
    })
      </script>
     </HEAD> <BODY>
      <input type="button" value="ClickMe" id="EOTable"/>
      <div id="Answers"></div>
     </BODY>
    </HTML>
    可能还是其他地方的原因吧
      

  6.   

    直接加html就像。jquery会自己把html对象化的了。$(xxx).html("your html");
      

  7.   

    感谢你的提示,我发现错误了            $("#EOTable td").click(function() {
                    num = $(this).html() - 1;
                    $.post("NextTest", { index: num.toString() }, function(data) {
                        $("#Question").html((num + 1) + "." + data.QuText);
                        $("#Correct :hidden").val(data.Correct);
                        $("#Answers").html("");
                        $.each(data.AnText, function(i, n) {                  //$.each对每一次都进行如下操作
                        $("#Answers").append($("<input type='radio' name='num' value='4'>ert</input><br/>"));
                        });
                        $("#Answers :radio").click(function() {
                            alert($(this).val());
                        });
                    }, "json");
                    ;            });
    原来$("#Answers :radio").click()方法必须放在.post()的success:里,其它地方都无效
      

  8.   

    因为我要在DIV里写的radio个数不固定,所以只能用.append(), html()实现不了~~同样感谢