jQuery .submit()在ajax响应后不起作用



我试图在ajax响应后调用jquery.submit((函数。ajax响应包含形式。但是当我提交表格而没有刷新时,它无法致电jquery.submit((函数。

我在成功的ajax响应之后用现有代码预先准备表格

success: function(data) {
        event.preventDefault();
        $(".name_wrapper").prepend('<form class="replyName"><textarea name="name"   placeholder="Write your name"></textarea><button type="submit" class=" btn btn-primary">Reply your name</button></form>');
},
error: function(data) {}

因此,将表格添加到现有代码后。当我尝试提交表格时,它会刷新而不是调用该功能。如何使jquery.submit((从ajax响应中可行?

 $(".replyName").submit(function(event) {
     alert(event.currentTarget[0].value);
 });

您应该在 prepend之后放置 submit事件。因为event的加载后CC_3的s仅被束缚在元素上。

并且由于prepend动态形式,jQuery不知道它必须提交哪个元素,因为它在事件时不存在 binded

success: function(data) {
        event.preventDefault();
        $(".name_wrapper").prepend('<form class="replyName"><textarea name="name"   placeholder="Write your name"></textarea><button type="submit" class=" btn btn-primary">Reply your name</button></form>');
        $( ".replyName").submit(function( event ) {
            alert(event.currentTarget[0].value);
            event.preventDefault();
        });
},
error: function(data) {}

由于未在文档中创建表单,因此您无法收听提交事件,除非您将事件听众预先登录表单后将事件听众放入DOM

之后
success: function(data) {
    event.preventDefault();
    $(".name_wrapper").prepend('<form class="replyName"><textarea name="name"   placeholder="Write your name"></textarea><button type="submit" class=" btn btn-primary">Reply your name</button></form>');
    $(".replyName").submit(function(event) {
    alert(event.currentTarget[0].value);
});
},
error: function(data) {}

您也可以从身体DOM

处理事件
$('body').on('submit', '.replyName', function(e){
  // code here
});

您可以做两件事:

您可以像这样重新启动点击函数:

success: function(data) {
        event.preventDefault();
        $(".name_wrapper").prepend('<form class="replyName"><textarea name="name"   placeholder="Write your name"></textarea><button type="submit" class=" btn btn-primary">Reply your name</button></form>');
 $('button').bind('click', function (event) {
      event.preventDefault();
      alert(event.currentTarget[0].value);
});
},
error: function(data) {}

,也可以尝试此

$('button').on('click', function(e){
  // code here
});

最新更新