更新一些代码库并遇到一个我似乎无法克服的问题。我已经阅读了 .on 文档,并觉得我对它有足够的了解。登录时通过 ajax.load 引入表单。没有问题。在一个简单的设置中,例如:
<div id="FXCMForm">
<form action="processor.php" method="post" id="Form1">
<ul>
//other li's
<input type="submit" id="Button1" value="Create License Key" />
//other li's
</ul>
<div id="Msg1" class="error"><a class="close">X</a><ul></ul></div>
</form>
</div>
使用 .live 的旧代码是这样的
$("#Button1").live('click',function(){
$("#Form1").validate({
errorContainer: "#Msg1",
errorLabelContainer: "#Msg1 ul",
errorElement: "li",
submitHandler: function(form) {
$('#prcs1').show();
var dataString = $(form).serialize();
$.ajax({
//ajax success stuff
} else {
//ajax fail stuff
}
});return false;
},
rules: {//rules},
messages: {//messages}
});
});
尝试像这样使用 new(ish) .on 调用
$("#FXCMForm").on("click", "#Button1", function(event){
$("#Form1").validate({
//all other stuff here
});
我已经调用了包含动态元素#FXCMForm、事件类型“click”和触发它的元素“#Button1”的容器,但是当我单击时,它只是将返回的 PHP 数据转储到一个空白页面中,而不是做任何 ajax 的东西. 有任何想法吗?谢谢你