jquery-live和委派在此失败

jquery-live和委派在此失败,jquery,Jquery,下面的代码以前工作过,但不会再次工作,除非我在ajax调用后添加了警报,我使用了delegate和live,但仍然不能工作 function getAns(val) { var value; value = $("input[name=ans"+val+"]:checked").val(); $.post('ajax.php', {val:value}, function(data) { alert(data); }); //only works with this alert aler

下面的代码以前工作过,但不会再次工作,除非我在ajax调用后添加了警报,我使用了delegate和live,但仍然不能工作

function getAns(val) {
var value;
value = $("input[name=ans"+val+"]:checked").val();
$.post('ajax.php', {val:value}, function(data) {
    alert(data);
});
//only works with this alert
alert('done'); 
});

}

看起来你有一个额外的
})在您的函数中。当对象键保存函数参数中的值时,您还使用
val
作为对象键。不确定这是否是故意的,但请尝试以下方法:

function getAns(_val) {

    $.ajax({
        url: 'ajax.php',
        data: 'val=' + $("input[name=ans" + _val + "]:checked").val(),
        type: 'post',
        success: function(data){
            alert(data);
        },
        error: function(jqXHR, textStatus, errorThrown){
            alert(textStatus + ' -- ' + errorThrown);
        }
    });
}

两个字:得到。萤火虫。两个更好的词:得到。铬。@MattAnderson-还有一个更好的词吗?:)感谢您的回答,在变量声明和指定所选输入之间有一行被省略了,那就是表单提交行($(“表单#myform”).submit(函数(){),这解释了额外的“})”。我试过你的建议,但还是没用。谢谢。请参阅更新的代码。请尝试
$.ajax()
方法,并确保您使用的是最新版本的JQuery