javascript - 即使页面发生变化,在点击时也显示 AJAX 请求?

标签 javascript jquery html ajax

让我通过让您知道我是一个完整的 AJAX/JSON 菜鸟来作为这个问题的序言。顺便说一句,我试图在我网站的侧边栏中显示 AJAX 响应。到目前为止,我已经完美地工作了,但是,现在我想更进一步。

现在我将 AJAX 查询绑定(bind)到单击事件并且效果很好,但我希望信息在初始单击按钮后保留在 DIV 中,这样如果用户导航到其他页面侧边栏,信息仍会显示,无需再次单击该按钮。我假设这将需要某种 cookie,但也许还有另一种方式。

这是我的 AJAX 调用:

$('#locSearch').click(function() {
    jQuery.ajax({
      type: "GET",
      dataType: "html",
      url: "/search/locations/result.html",
      success: function(closestLoc) {

        jQuery('.locResult').html(closestLoc);

      } // end success

    }); // end ajax
});

这是我的 HTML:

<div class="locinfo">
    <span id="locSearch" class="button">Click here to find the nearest location</span>
    <div class="locResult"></div>
</div>

我假设这需要 cookie 是否正确?还是有更好/更简单的方法,如果有,是什么?谢谢!

最佳答案

它所做的是在本地存储中设置边栏,并在页面加载时检查它是否存在。

if ( localStorage.SideBar == "Clicked" ){
    jQuery.ajax({
      type: "GET",
      dataType: "html",
      url: "/search/locations/result.html",
      success: function(closestLoc) {

        jQuery('.locResult').html(closestLoc);

      } // end success

    }); // end ajax
}

$('#locSearch').click(function() {
    jQuery.ajax({
      type: "GET",
      dataType: "html",
      url: "/search/locations/result.html",
      success: function(closestLoc) {

        jQuery('.locResult').html(closestLoc);

      } // end success

    }); // end ajax
    localStorage.SideBar = "Clicked"
});

关于javascript - 即使页面发生变化,在点击时也显示 AJAX 请求?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21789056/

相关文章:

javascript - 隐藏 <section> 末尾的 div

javascript - 从另一个页面锚定到 div 时切换文本

javascript - 如何使用嵌套 <ul> 创建选项卡组?

javascript - 使用 javascript 从 jquery 中的数组列表中删除数组项

javascript - 将鼠标悬停在表格单元格上时更改主体背景颜色

php - 将javascript变量添加到html div标签

javascript - 如何执行删除 MySQL 数据库条目的确认弹出窗口?

jquery - 使用 jQuery 将带有子项的 DIV 淡化为黑色,反之亦然

javascript - 如何将背景图像更改添加到 jQuery

javascript - 帮助将图像动态加载到 Galleria