Jquery 单选按钮(动态创建)的Onclick事件没有响应
我有一个下拉列表和两个文本框。填充它们之后,(单击按钮),我希望将它们动态地附加到表行中,并将单选按钮作为第三列 下面的代码正在工作,但不确定单选按钮的onclick事件没有响应的原因。我正在使用MVC3.0 我注意到onclick事件仍然在工作,但是单击的单选按钮没有被选中,其他单选按钮没有被选中Jquery 单选按钮(动态创建)的Onclick事件没有响应,jquery,asp.net-mvc,jquery-ui,Jquery,Asp.net Mvc,Jquery Ui,我有一个下拉列表和两个文本框。填充它们之后,(单击按钮),我希望将它们动态地附加到表行中,并将单选按钮作为第三列 下面的代码正在工作,但不确定单选按钮的onclick事件没有响应的原因。我正在使用MVC3.0 我注意到onclick事件仍然在工作,但是单击的单选按钮没有被选中,其他单选按钮没有被选中 function Contact_OnAddTelephone() { var type = $("#rdoTelephoneType").val(); var areaCode
function Contact_OnAddTelephone() {
var type = $("#rdoTelephoneType").val();
var areaCode = $("#txtAreaCode").val();
var radio = $('<input>').attr({
type: 'radio', id: 'rdoTelePrimary', name: 'rdoTelePrimary', onclick: 'alert("a");this.checked'
});
$('#tableTelephone tr:last').after("<tr><td>" + type + "</td><td>" + areaCode + "-" + number + "</td><td>" + radio[0].outerHTML + "</td></tr>");
}
功能联系电话(){
var type=$(“#rdoTelephoneType”).val();
var areaCode=$(“#txtAreaCode”).val();
变量无线电=$('').attr({
键入:“radio”,id:“rdoTelePrimary”,名称:“rdoTelePrimary”,onclick:“alert”(“a”);此项。选中”
});
$('#tableTelephone tr:last')。在(“+type+”“+areaCode+”-“+number+”“+radio[0]。outerHTML+”)之后;
}
单击此处仍然可以看到警报被触发,但此.checked无效如果动态插入控件,则可以使用jQuery 下面是一个简单的例子:
$('#rdoTelePrimary').live('click', function () {
// do your stuff here...
});
如果动态插入控件,则可以使用jQuery 下面是一个简单的例子:
$('#rdoTelePrimary').live('click', function () {
// do your stuff here...
});
试试这个:
function Contact_OnAddTelephone() {
var type = $("#rdoTelephoneType").val(),
areaCode = $("#txtAreaCode").val(),
radio = $('<input>').attr({
type: 'radio',
id: 'rdoTelePrimary',
name: 'rdoTelePrimary',
onclick: 'myRadioButtonClickFunction'
});
$('#tableTelephone tr:last').after("<tr><td>" + type + "</td><td>" + areaCode + "-" + number + "</td><td>" + radio[0].outerHTML + "</td></tr>");
}
function myRadioButtonClickFunction(){
// do stuff
}
功能联系电话(){
var type=$(“#rdoTelephoneType”).val(),
areaCode=$(“#txtAreaCode”).val(),
收音机=$('').attr({
键入:“收音机”,
id:'rdoTelePrimary',
名称:'rdoTelePrimary',
onclick:'myRadioButtonClickFunction'
});
$('#tableTelephone tr:last')。在(“+type+”“+areaCode+”-“+number+”“+radio[0]。outerHTML+”)之后;
}
函数myRadioButtonClickFunction(){
//做事
}
注:未测试
顺便说一下,您可能希望在函数名上使用camelCase。尝试以下方法:
function Contact_OnAddTelephone() {
var type = $("#rdoTelephoneType").val(),
areaCode = $("#txtAreaCode").val(),
radio = $('<input>').attr({
type: 'radio',
id: 'rdoTelePrimary',
name: 'rdoTelePrimary',
onclick: 'myRadioButtonClickFunction'
});
$('#tableTelephone tr:last').after("<tr><td>" + type + "</td><td>" + areaCode + "-" + number + "</td><td>" + radio[0].outerHTML + "</td></tr>");
}
function myRadioButtonClickFunction(){
// do stuff
}
功能联系电话(){
var type=$(“#rdoTelephoneType”).val(),
areaCode=$(“#txtAreaCode”).val(),
收音机=$('').attr({
键入:“收音机”,
id:'rdoTelePrimary',
名称:'rdoTelePrimary',
onclick:'myRadioButtonClickFunction'
});
$('#tableTelephone tr:last')。在(“+type+”“+areaCode+”-“+number+”“+radio[0]。outerHTML+”)之后;
}
函数myRadioButtonClickFunction(){
//做事
}
注:未测试
顺便说一下,您可能希望在函数名上使用camelCase。至少在这个代码段中,您没有设置单击处理程序。还请包括单击处理程序的设置代码。“onclick-偶”是指您的自定义事件函数还是其本机函数?@chaZm:我指的是单选按钮的本机onclick事件。至少在这个代码段中,您没有设置单击处理程序。还请包括单击处理程序设置代码。所谓“onclick-偶”,是指自定义事件函数还是其本机函数?@chaZm:I表示单选按钮的本机onclick-event。