通过ajax和url更新页面,而无需重新加载页面(node.js)

亚历克斯

什么是在不刷新页面且可以通过按钮事件和URL进行访问的情况下更新库存的正确方法。这样,当url param id基于路由时,它将把它更新到特定页面。就像购物网站上的产品页面一样。下面通过ajax请求而不是通过url(inventory / 2)来工作,它只是将我带到发布的数据,而不是呈现的视图。我要求它能够通过url转到特定页面,以便可以链接到该页面。当未启用javascript时,还需要能够退回到标准页面加载。

查看(库存)

extends layout

block content


   div.row
       div.col-md-offset-2.col-md-8#inventory

   a(class='btn', href='#') Get More!

   script.
         $(function(){
            $("a.btn").on("click", function(e) {  
               e.preventDefault();
               $.get( '/inventory/2', function(data) { 
                   $('#inventory').html(data);
               });
            });
         });

路线

router.get('/inventory/:id?', function (req, res) {
    if(req.params.id){
    var id = req.params.id;
    var data = "Updated and now on page " + id
         res.send(data);
    }else{
         res.render('inventory');
    }
});
阿莱夫阿莱夫

建议使用两组不同的路径:一组用于人类用户,另一组用于脚本(API)。routes上面文件中,您将两者混合使用-res.send(data)用于AJAX脚本,并res.render('inventory')根据用户的请求直接在浏览器中显示-基本上,这就是为什么未获得预期结果的原因。

请在下面看到一个简单的示例,说明如何构建应用文件(合理地扩展它):

看法:

extends layout
block content
   div.row
       div.col-md-offset-2.col-md-8#inventory
           = content

   a(class='btn', href='#') Get More!
   script.
         $(function(){
            $("a.btn").on("click", function(e) {  
               e.preventDefault();
               $.get( '/api/inventory/2', function(data) { 
                   $('#inventory').html(data);
               });
            });
         });

路线:

var getData = function(id) {
    return "Updated and now on page " + id;
}
router.get('/api/inventory/:id', function (req, res) {
    res.send(getData(req.params.id);
}
router.get('/inventory/:id?', function (req, res) {
    var data;
    if (req.params.id) {
        data = getData(req.params.id);
    } else {
        data = null;
    }
    res.render('inventory', {content: data});
});

(注意:如果您包含HTML,可能必须在Jade模板中使用!= content而不是。)= contentdata

现在,用户可以通过/inventory来访问页面的不同状态/inventory/2,而AJAX调用将使用第三个URL来完成/api/inventory/2

最重要的是,你可以动态更新在用户的浏览器URL字段中可能需要的-看到答案对这个问题的更多细节。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Backbone.js刷新视图而无需重新加载页面

来自分类Dev

刷新Angular JS Factory而无需重新加载页面

来自分类Dev

从js.erb中部分更改图像而无需刷新页面

来自分类Dev

通过JS事件加载新页面时,如何使Selenium WebDriver等待页面加载

来自分类Dev

使用js更改url参数,而无需在单击按钮时重新加载页面

来自分类Dev

更改时重新加载JS / CSS文件,而无需重新加载页面

来自分类Dev

无需重新加载页面即可更改/更新页面内容-作者:AJAX Laravel

来自分类Dev

无需重新加载页面即可更改/更新页面内容-作者:AJAX Laravel

来自分类Dev

Angular应用程序没有在刷新页面上加载CSS和JS吗?

来自分类Dev

通过ajax更新数据库,而无需刷新页面codeigniter

来自分类Dev

通过JS代码段刷新页面

来自分类Dev

使用jQuery更新脚本标签的src-使用jQuery重新加载脚本而无需刷新页面

来自分类Dev

Node.js + Express:将某些内容插入数据库后,如何更新页面?

来自分类Dev

通过ajax提交表单,并通过JSON从servlet进行回复,而无需刷新页面

来自分类Dev

定期更新页面上的信息,而无需刷新页面

来自分类Dev

Backbone.js无需重新加载页面即可更改url

来自分类Dev

更新页面上的数据而无需刷新

来自分类Dev

在提交时更新DIV,而无需刷新页面

来自分类Dev

jQuery / Ajax按ID更新Span或Div,而无需刷新页面

来自分类Dev

通过URL触发多个单独的JavaScript函数,而无需刷新页面

来自分类Dev

Spotify Web Player-更新URL而无需刷新页面

来自分类Dev

无需页面刷新即可更新页面内容 cURL 和 ajax

来自分类Dev

Vue.js Axios:HTTP GET请求后无法更新页面

来自分类Dev

问题刷新页面Node.js无法/获取错误

来自分类Dev

使用Vue.js和本地存储刷新页面后保持按钮文本状态

来自分类Dev

ajax jQuery更新页面,无需刷新

来自分类Dev

ajax jQuery更新页面,无需刷新

来自分类Dev

使用js / jquery通过页面重新加载修改URL中的参数

来自分类Dev

如何在特定月份刷新页面。JS

Related 相关文章

  1. 1

    Backbone.js刷新视图而无需重新加载页面

  2. 2

    刷新Angular JS Factory而无需重新加载页面

  3. 3

    从js.erb中部分更改图像而无需刷新页面

  4. 4

    通过JS事件加载新页面时,如何使Selenium WebDriver等待页面加载

  5. 5

    使用js更改url参数,而无需在单击按钮时重新加载页面

  6. 6

    更改时重新加载JS / CSS文件,而无需重新加载页面

  7. 7

    无需重新加载页面即可更改/更新页面内容-作者:AJAX Laravel

  8. 8

    无需重新加载页面即可更改/更新页面内容-作者:AJAX Laravel

  9. 9

    Angular应用程序没有在刷新页面上加载CSS和JS吗?

  10. 10

    通过ajax更新数据库,而无需刷新页面codeigniter

  11. 11

    通过JS代码段刷新页面

  12. 12

    使用jQuery更新脚本标签的src-使用jQuery重新加载脚本而无需刷新页面

  13. 13

    Node.js + Express:将某些内容插入数据库后,如何更新页面?

  14. 14

    通过ajax提交表单,并通过JSON从servlet进行回复,而无需刷新页面

  15. 15

    定期更新页面上的信息,而无需刷新页面

  16. 16

    Backbone.js无需重新加载页面即可更改url

  17. 17

    更新页面上的数据而无需刷新

  18. 18

    在提交时更新DIV,而无需刷新页面

  19. 19

    jQuery / Ajax按ID更新Span或Div,而无需刷新页面

  20. 20

    通过URL触发多个单独的JavaScript函数,而无需刷新页面

  21. 21

    Spotify Web Player-更新URL而无需刷新页面

  22. 22

    无需页面刷新即可更新页面内容 cURL 和 ajax

  23. 23

    Vue.js Axios:HTTP GET请求后无法更新页面

  24. 24

    问题刷新页面Node.js无法/获取错误

  25. 25

    使用Vue.js和本地存储刷新页面后保持按钮文本状态

  26. 26

    ajax jQuery更新页面,无需刷新

  27. 27

    ajax jQuery更新页面,无需刷新

  28. 28

    使用js / jquery通过页面重新加载修改URL中的参数

  29. 29

    如何在特定月份刷新页面。JS

热门标签

归档