刚刚接触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());
});无效。
$(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());
});无效。
$("#Answers input['radio']").click(function() { alert($(this).val());
});貌似是这么写的,Query没用过,这个代码也没测试过
$("input[name='radio_name'][checked]").val();
$(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());
}); });
你把第二段代码放进第一段代码里面试试
<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>
可能还是其他地方的原因吧
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:里,其它地方都无效