我的页面上有3个单选按钮。通过调用返回html ex:
的jQuery函数来加载它们<script type="text/javascript"><!--
onSelectChange(4);
-->
调用此函数:
function onSelectChange(parm){
$.post("func.php", {function_name : "song"},
function(data){
$("#list").html(data.song_html);
}, "json");
}
返回的html看起来像这样:
<INPUT TYPE="radio" NAME="songs" VALUE="A">A
<INPUT TYPE="radio" NAME="songs" VALUE="B">B
<INPUT TYPE="radio" NAME="songs" VALUE="C">C
<INPUT TYPE="radio" NAME="songs" VALUE="D">D
现在我想知道点击其中一个单选按钮的时间,所以我有以下功能:
$("input[name='songs']").change( function() {
alert($(this).val());
它永远不会触发 - 我认为它与动态添加控件有关,因为当我在静态html页面上尝试上述内容时,它会按预期触发。有什么想法吗?
答案 0 :(得分:2)
动态添加控件时使用.live()
,如下所示:
$("input[name='songs']").live("change", function() {
alert($(this).val());
});
这样做的方式不同,它不是查找元素并将change
处理程序绑定到它们,而是绑定document
上的处理程序,该处理程序监听change
事件冒泡...无论何时添加元素,都会以相同的方式发生。
答案 1 :(得分:0)
$("input[name=songs]").change( function() {
alert($(this).val());
}
姓名后没有撇号=