gpt4 book ai didi

php - jQuery ajax 响应后重新绑定(bind)动态创建的表单

转载 作者:行者123 更新时间:2023-12-01 07:35:11 25 4
gpt4 key购买 nike

我对 jQuery 有点陌生,但大部分都了解它。我的问题是,当刷新整个 div 的 ajax 调用完成时,我所有动态创建的表单都不起作用。如果您尝试提交它们,该事件将无法正常工作,而只是尝试进行正常的表单提交。我有所有其他项目,例如使用 .live() 绑定(bind)的链接,它看起来效果很好。只是形式消亡了。ajax 调用后如何重新绑定(bind)动态创建的表单?它们都有 formname_id 的 id。我尝试使用绑定(bind),但它不起作用,如下所示。如有任何帮助,我们将不胜感激。

这是代码

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;
});

无需循环表单即可绑定(bind)到它们。如果可以使用delegate而不是现场这样做。

关于php - jQuery ajax 响应后重新绑定(bind)动态创建的表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2754961/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com