jQuery访问动态创建的单选按钮
我的页面上有3个单选按钮。通过调用jQuery函数加载它们,该函数返回html ex:jQuery访问动态创建的单选按钮,jquery,dynamic,radio-button,Jquery,Dynamic,Radio Button,我的页面上有3个单选按钮。通过调用jQuery函数加载它们,该函数返回html ex: <script type="text/javascript"><!-- onSelectChange(4); --> 返回的html如下所示: <INPUT TYPE="radio" NAME="songs" VALUE="A">A <INPUT TYPE="radio" NAME="songs" VALUE="B">B <INPUT TYPE=
<script type="text/javascript"><!--
onSelectChange(4);
-->
返回的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']").live("change", function() {
alert($(this).val());
});
但它从来不会触发——我认为这与动态添加控件有关,因为当我在静态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']").live("change", function() {
alert($(this).val());
});
这与查找元素并将change
处理程序绑定到元素不同,它绑定了document
上的处理程序,该处理程序侦听change
事件冒泡…无论何时添加元素,情况都是一样的
$("input[name=songs]").change( function() {
alert($(this).val());
}
name=后面没有撇号。您可以将名称括在引号中,也可以不括在引号中,两者都是有效的……如果有任何特殊字符需要使用引号。