我有点新的jQuery的,但了解它的大部分。 我的问题是,当我的Ajax调用它刷新整个DIV做,我所有的动态创建的形式不工作。 如果您尝试并提交,事件好好尝试正常工作,只是试图做一个正常的形式提交。 我把所有的其他项目,如使用.live()这似乎工作的伟大捆绑链路。 刚成形模。 如何重新绑定Ajax调用后动态创建的形式? 他们都有formname_id的ID。 我试图使用绑定,但它不如下工作。 任何帮助表示赞赏。
下面是代码
jQuery(document).ready(function(){
jQuery("form[id^='commentform_']").each(function(){
var id = parseInt(this.id.replace("commentform_", ""));
jQuery(this).bind('submit', function(e) {
var action = jQuery('#action_' + id).attr('value');
var act_id = ('1');
jQuery.ajax({
type: "POST",
url: "ajax/modify.php",
data: "action="+ action +"& act_id="+ act_id,
success: function(response){
jQuery('#CommentsContainer_' + id).html(response);
jQuery('#commentform_' + id)[0].reset();
}
});
return false;
});
});
});
试着做这样的事情:
jQuery("form[id^='commentform_']").live('submit',function(){
var id = parseInt(this.id.replace("commentform_", ""));
var action = jQuery('#action_' + id).attr('value');
var act_id = ('1');
jQuery.ajax({
type: "POST",
url: "ajax/modify.php",
data: {"action": action, "act_id": act_id},
success: function(response){
jQuery('#CommentsContainer_' + id).html(response);
jQuery('#commentform_' + id)[0].reset();
}
});
return false;
});
无需遍历所有的形式绑定到他们。 如果您可以使用委托 ,而不是活的这样做。
你为什么不过乘坐普通表单提交:
function addNewitem() {
$('#new_item_form').submit(function() {
$.get("includes/ItemEdit.php", {
newItem: true
},
function(msg) {
isNewItem = true;
$("#new_item").hide();
$('#item_list').hide();
$("#item_edit").html( msg );
$("#item_edit").show();
editActiveEvent();
});
return false;
});
}
不要忘了返回false。 或做.preventDefault
我得到这个工作将在函数调用的事件,并使用event.preventDefault(); 但当然只在FF。 在IE7中不工作..
jQuery("form[id^='commentform_']").live('submit',function(event){
var id = parseInt(this.id.replace("commentform_", ""));
var action = jQuery('#action_' + id).attr('value');
var act_id = ('1');
jQuery.ajax({
type: "POST",
url: "ajax/modify.php",
data: {"action": action, "act_id": act_id},
success: function(response){
jQuery('#CommentsContainer_' + id).html(response);
jQuery('#commentform_' + id)[0].reset();
}
});
event.preventDefault();});
但IE7仍试图透过行动。 arrgggh ..任何事情我做错了?