【问题标题】:How to refresh the page with nodejs after click on submit button单击提交按钮后如何使用nodejs刷新页面
【发布时间】:2017-03-10 06:37:43
【问题描述】:

我需要你一点帮助。

我有一个按钮,它可以复制某些东西,并且“某些东西”应该立即出现在页面上。问题是按钮具有复制功能,但现在我必须手动刷新页面才能看到更改。

我不认为这很棘手,但我尝试过没有成功:

<form method="post" action="/users/copy?scene=<%= scene.id %>">
  <button type="submit" class="btn btn-primary" onClick="window.location.href=window.location.href">Copy the scene</button>
</form>

我的意思是,如果我将 "submit" 更改为 "button",它会起作用,但是复制某些内容的功能将不再起作用。

我用谷歌搜索了,但到目前为止我还没有找到任何答案。

任何帮助将不胜感激

所以在我添加刷新页面的功能之前,我才意识到本地主机正在加载,因此服务器上肯定有未完成的请求。我认为它在这个函数中:

router.post('/copy', function(req,res,call) {

if( req.param('scene') !== undefined ){

db.serialize(function () {

 db.run("CREATE TABLE temp_table as SELECT * FROM scene where id=?", req.param('scene'));
 db.run("UPDATE temp_table SET id = NULL, user_id = (SELECT id FROM users WHERE email =?)",GLOBAL.email);
 db.run("INSERT INTO scene SELECT * FROM temp_table");
 db.run("DROP TABLE temp_table");
 // res.render('copy');
    if(error) {
        console.log(error);
    } 
});

db.close();

 }
 });

【问题讨论】:

    标签: javascript jquery html node.js


    【解决方案1】:

    你可以试试这样的:

    <button id="btn">
      Click me
    </button>
    
    $("#btn").click(function(){
      location.reload(true);
    });
    

    所以一旦 btn 被点击。您使用 jquery 引用它,然后使用 location.reload(true) 刷新页面。 jsfiddle:https://jsfiddle.net/j9nftot3/

    【讨论】:

    • 我刚刚编辑了我的帖子,我粘贴的那个函数有一个不同的问题。它不断加载本地主机,当我刷新页面时,就会发生变化。
    【解决方案2】:
    $(document).ready(function(){ 
      $(form).on('submit', function(){ 
            location.reload();
      });
    })
    

    【讨论】:

    • 你把这个放在哪里
    • @mskw 您可以将其放在 html 页面中的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-07-31
    • 2017-12-13
    • 2017-10-16
    • 2019-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多