2015-04-02 54 views
2

我简单的形式http://localhost:3000/connectSubmit我的流星路由有什么问题?

<template name="connectSubmit"> 
    <form> 
    <input type="email" class="testf form-control" id="email" placeholder="Email here"><br> 
    <input type="submit" value="Submit" class="submit btn btn-primary"/> 
    </form> 
</template> 

connect_submit.js:

Template.connectSubmit.events({ 
    'submit form': function(e) { 
     Router.go('index'); 
    } 
    }); 

router.js:

Router.configure({ 
    layoutTemplate: 'layout', 
}); 

Router.map(function() { 
    this.route('index', {path: '/'}) 
    this.route('/connectSubmit') 
}); 

的Index.html:

<template name="index"> 
     <a href="/connectSubmit" class="btn btn-default">Connect</a> 
</template> 

当我正在提交表单,网址是:http://localhost:3000/connectSubmit?并且没有将我重定向到索引页

回答

1

当您使用HTML提交表单时,默认行为是发出HTTP POST请求并重新加载页面,打破单页网页应用体验,您需要做的是防止此默认行为,以便发生:

Template.connectSubmit.events({ 
    'submit form': function(e) { 
    e.preventDefault(); 
    Router.go('index'); 
    } 
}); 
+0

现在的工作很好,谢谢! – bartezr 2015-04-02 06:58:58