仅在特定页面上进行ajax调用

时间:2019-04-09 08:33:38

标签: jquery ajax

我正在制作一个多页应用程序,其中有几个页面在发出ajax请求。 我想确保每个请求都在特定页面(而不是每个页面)上触发。

例如,以下内容将在我的快速应用中的每个页面上拨打电话:

$(document).ready(function() {
  $.getJSON('/api/skills/user')
    .then(selected => {
      console.log("js.2. pre-populate GET /api/skills/user/")
    })
    .catch(err => {
      console.log("$.getJSON('/api/skills/user/') failed")
    })
}

我试图通过首先检查字符串是否与URL相匹配来仅在特定页面上进行此调用:

$(document).ready(function() {
  if(window.location.toString().includes("profile")) {

    $.getJSON('/api/skills/user')
      .then(selected => {
        console.log("js.2. pre-populate GET /api/skills/user/")
      })
      .catch(err => {
        console.log("$.getJSON('/api/skills/user/') failed")
      })
  }
}

但是,如果我要在具有/profile/...而不是profile/.../matches/...这样的URL的页面上进行此调用,则此方法无效(因为它在两个profile中都找到了/profile/...profile/.../matches/...)。

我应该如何去做?我可以根据正则表达式检查URL,但这似乎不是一种特别好的方法。

是否存在以页面特定方式进行ajax调用的标准方法?

0 个答案:

没有答案