繁体   English   中英

内部带有.ajax()的两个函数不能一起使用

[英]Two functions with .ajax() inside doesn't work together

在我的JS文件中,我有两个功能:

function A () {
  ...
    $.ajax({
      type: "POST",
      url: "page.php",
      data: {<some data>}
    })
    .done(function( data ) {
      ...
    })
  ...
}

function B () {
  ...
    $.ajax({
      type: "POST",
      url: "page.php",
      data: {<some other data>}
    })
    .done(function( ) {
      ...
    })
}

这两个函数都由某些锚点的onclick事件调用。 因此,在html文件中的某处我有这样的代码:

<a onclick="A()">Link to call A()</a>
<a onclick="B()">Link to call B()</a>

当我的代码中只有函数A时 ,一切正常。 但是,当我将它们包含在上面的代码中时,这些功能都不起作用。 当我单击带有onclick =“ A()”的链接时,甚至没有调用函数A。

怎么了? 我该如何解决?

如果单击按钮时正在调用该函数,则删除$(document).ready(位。当用户单击按钮时,文档就绪状态已通过-这是在页面加载时运行的事件。

function A () {
  ...
    $.ajax({
      type: "POST",
      url: "page.php",
      data: {<some data>}
    })
    .done(function( data ) {
      ...
    });
  ...
}

function B () {
  ...
    $.ajax({
      type: "POST",
      url: "page.php",
      data: {<some other data>}
    })
    .done(function( ) {
      ...
    });
}

如下所示。 这样,将在准备好文档时调用您的函数,也可以根据需要调用它们。

function A () {
    $.ajax({
        type: "POST",
        url: "page.php",
        data: {}
    })
    .done(function (data) {
    });
}

function B () {
    $.ajax({
        type: "POST",
        url: "page.php",
        data: {}
    })
    .done(function () {
    });
}

$(document).ready(A);
$(document).ready(B);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM