使用Meteor JS时如何使用按钮更改URL路径

时间:2016-06-14 17:10:00

标签: javascript html debugging meteor hyperlink

我知道当你想通过点击普通html中的某个元素来加载另一个html文件时,你会使用这样的东西:

<a href="index2.html">Example Link</a>

但是我应该如何在Meteor应用程序中执行此操作。我的情况是我想点击一个提交按钮并让按钮不仅提交我的某个表格,而且改变另一个页面的路径。现在在我的流星应用程序中我正在使用kadira流路由器并设置了一些目录,所以我想我只会制作一个onclick函数来呈现流路由器。这是我为此尝试的代码:

路线代码:

FlowRouter.route('/joinLobby', {
  name: 'joinLobby',
  action() {
    BlazeLayout.render('joinLobby');
  }
});

onclick功能:

<script>
  function renderPage(){
    BlazeLayout.render('joinLobby');
  }
</script>

按钮:

<button type="submit" class="btn btn-primary"    onclick="renderPage()">Insert</button>

我不确定这是不是最好的做法,这就是我一起去另一个页面,所以我问最新的方法是什么。当我使用它时,这也给我带来了一些问题。主要的问题是,当我点击按钮时,它会弹回我的默认路线,并说localhost:3000无法加载图像,因此不允许我甚至到达路线。

1 个答案:

答案 0 :(得分:1)

您不是以流星方式处理事件。应该采用以下方式:

<button type="submit" class="btn btn-primary btn-insert">Insert</button>

模板事件:

Template.template_name.events({
  "click .btn-insert": function() {
    //Your logic to submit form goes here...
    //on validating the form data and posting it successfully, navigate to the new route...
    FlowRouter.go('/joinLobby');
  }
});