不确定这是 Meteor 问题、JavaScript 问题还是其他问题。单击表单按钮会导致不需要的页面重新加载。
其他信息:
- 使用引导包
- 使用 jQuery 包
- 使用主干包
- 即使删除了上述软件包,页面重新加载问题仍然会发生
注释掉 Posts.insert() 行也不能解决它
// 来自 application.js
// *这是应用程序中唯一与事件相关的代码(除了由流星从我们那里抽象出来的任何幕后内容)Template.new_post.events = { 'click #submit' : function () { var text = $('#title').val(); var cat = $('#category').val(); // save our post with the value of the textbox Posts.insert({title : text, category : cat}); } };
// 来自 index.html
<template name="new_post"> <form class="form-horizontal"> <fieldset> <div class="control-group"> <!-- Text input--> <label class="control-label" for="title">Title</label> <div class="controls"> <input type="text" id="title" value="{{text}}" class="input-xlarge"> <p class="help-block">Hint: Summarize your post in a few words</p> </div> </div> <div id="form-part-2"> <div class="control-group"> <label class="control-label" for="categories">Category</label> <div class="controls"> <select class="input-xlarge" id="category"> {{#each categories}} <option value="{{defaultLabel}}">{{defaultLabel}}</option> {{/each}} </select> <p class="help-block">Hint: Choose a category</p> </div> </div> <!-- Button --> <div class="control-group"> <div class="controls"> <button class="btn btn-success" id="submit">Done</button> </div> </div> </div><!-- end div form-part-2 --> </fieldset> </form> </template>