Javascript Meteor表格未提交
我正在Meteor中建立一个表单系统,目前表单没有提交。我已经非常仔细地学习了教程。不确定是什么问题。这是其中一个表单的代码。此表单用于创建和提交“文本”项Javascript Meteor表格未提交,javascript,forms,meteor,meteor-blaze,spacebars,Javascript,Forms,Meteor,Meteor Blaze,Spacebars,我正在Meteor中建立一个表单系统,目前表单没有提交。我已经非常仔细地学习了教程。不确定是什么问题。这是其中一个表单的代码。此表单用于创建和提交“文本”项 {{getDate}} 变更日期 {{getLocation}} 位置 {{getName Meteor.userId} {{currentUser.username} {{>ESAutoSuggestion id=“TextMembersAdd”name=“CollaboratorsText”index=“collaborators”p
{{getDate}}
变更日期
{{getLocation}}
位置
{{getName Meteor.userId}
{{currentUser.username}
{{>ESAutoSuggestion id=“TextMembersAdd”name=“CollaboratorsText”index=“collaborators”placeholder=“添加成员”renderValue=“blank”renderSuggestion=“suggestionTpl”}
{{{#每个合作者}{{>collabTag}{{/each}}
标签
{{{each tags}{{>textTag}{{{/each}}
以及附带的JavaScript:
Template.CreateText.events({
“提交#CreateTextForm”:函数(事件){
event.preventDefault();
var textimagefile=event.target.ImageFileText.value;
var texttitle=event.target.TitleText.value;
var textText=event.target.textText.value;
var imagescreators=event.target.CreatorsImages.value;
var textcreator=event.target.CreatorText.value;
var textlocation=event.target.LocationText.value;
var textdate=event.target.DateText.value;
var texttags=event.target.TagsText.value;
文本.插入({
ImageFileText:textimagefile,
TitleText:texttitle,
文本文本:文本文本,
CreatorsText:Meteor.userId(),
创造者图像:图像创造者,
LocationText:textlocation,
DateText:新日期(),
TagsText:texttags
});
event.target.TitleText.value=“”;
event.target.TextText.value=“”;
返回false;
}
});
新的
//新建按钮
发表
//发布和订阅
文本=新Mongo.集合(“文本”);
if(Meteor.isServer){
//此代码仅在服务器上运行
Meteor.publish(“文本”,函数(){
返回文本。find();
});
}
if(Meteor.isClient){
//此代码仅在客户端上运行
Meteor.订阅(“文本”);
}
//调整插入函数
Template.CreateText.events({
“单击#createtext”:函数(事件){
/*
var文本图像文件=
var texttitle=;
var textText=;
var imagescreators=;
var textcreator=;
var textlocation=;
var textdate=;
var texttags=;
*/
文本.插入({
/*
ImageFileText:$('#ImageFileText').val(),
创建者文本:$(“#创建者图像”).val(),
创建者图像:$(“#创建者文本”).val(),
LocationText:$(“#LocationText”).val(),
DateText:$(“#DateText”).val(),
TagsText:$(“#TagsText”).val()
*/
TitleText:$(“#TitleText”).val(),
TextText:$(“#TextText”).val(),
});
}
});
您的提交按钮位于您的
标签之外。将提交放在
标记之前应该可以解决您的问题,除非您的代码还有其他问题,我还没有看到。您的提交按钮在
标记之外。将提交放在
标记之前应该可以解决您的问题,除非我还没有看到您的代码有进一步的问题。这样做了,但没有解决它。每个数据库查询只返回[]。没有任何东西在工作。我对代码做了一些改动。这是:我将按钮更改为:发布并将提交事件更改为单击事件。。。。。。Template.CreateText.events({'click#CreateText':函数(事件){text.insert({TitleText:$(“#TitleText”).val(),TextText:$(“#TextText”).val(),});});并再次明确发布和订阅…文本=新的Mongo.Collection(“文本”);if(Meteor.isServer){//此代码仅在服务器Meteor.publish(“文本”,函数(){return Text.find();});}if(Meteor.isClient){//此代码仅在客户端Meteor.subscribe(“文本”);}上运行。仍然没有任何内容……我意识到这不是最好的交换媒介。我做到了,但它没有修复它。每个数据库查询只返回[]。没有任何东西在工作。我对代码做了一些改动。这是:我将按钮更改为:发布并将提交事件更改为单击事件。。。。。。Template.CreateText.events({'click#CreateText':函数(事件){text.insert({TitleText:$(“#TitleText”).val(),TextText:$(“#TextText”).val(),});});并再次明确发布和订阅…文本=新的Mongo.Collection(“文本”);if(Meteor.isServer){//此代码仅在服务器Meteor.publish(“文本”,函数(){return Text.find();});}if(Meteor.isClient){//此代码仅在客户端Meteor.subscribe(“文本”);}上运行。仍然没有任何内容……我意识到这不是最好的交换媒介。
<template name="CreateText">
<form id="CreateTextForm" class="Text" method="post">
<!-- Text Image -->
<input type="file" accept='image/*' id="TextImage" name=”ImageFileText” placeholder="Add an Image">
<!-- Text Date -->
{{getDate}}
<button type="button" id="textdate">CHANGE DATE</button>
<!-- Text Location -->
{{getLocation}}
<button id="textlocation" type=”button” name="LocationText" value=”Location”>LOCATION</button><span class="glyphicon glyphicon-map-marker"> </span>
<!-- Text Creators -->
<div colspan="4" name="CreatorText" id="userviacreate">{{getName Meteor.userId}}</div>
{{currentUser.username}}
<!-- Text Collaborators -->
<div id="TextMembers">
{{> esAutosuggest id="TextMembersAdd" name="CollaboratorsText" index="collaborators" placeholder="Add a Member" renderValue="blank" renderSuggestion="suggestionTpl"}}
{{#each collaborators}} {{>collabTag}} {{/each}}
</div>
<hr id="first">
<!-- Text Title -->
<input type="text" id="TextTitle" name="TitleText" placeholder="Add a Title.">
<!--Text Tags -->
<div id="addtags">
<input type="text" id="TextTags" name="TagsText" placeholder="Tag This">
<button id="btn btn-default" type="button">Tag</button>
</div>
<hr class="second">
<!-- Text Text -->
<textarea id="TextText" name="TextText" placeholder="Add Text..."></textarea>
<div id="displaytags">
{{ #each tags }} {{>textTag}} {{ /each }}
</div>
</form>
<!-- Create Text Button -->
<input id="createtext" type="submit" class="btn btn-success" value="CREATE">
</template>
And the accompanying JavaScript:
Template.CreateText.events({
'submit #CreateTextForm': function(event) {
event.preventDefault();
var textimagefile = event.target.ImageFileText.value;
var texttitle = event.target.TitleText.value;
var textText = event.target.TextText.value;
var imagescreators = event.target.CreatorsImages.value;
var textcreator = event.target.CreatorText.value;
var textlocation = event.target.LocationText.value;
var textdate = event.target.DateText.value;
var texttags = event.target.TagsText.value;
Texts.insert ({
ImageFileText: textimagefile,
TitleText: texttitle,
TextText: textText,
CreatorsText: Meteor.userId(),
CreatorsImages: imagescreators,
LocationText: textlocation,
DateText : new Date(),
TagsText: texttags
});
event.target.TitleText.value = "";
event.target.TextText.value = "";
return false;
}
});
// NEW BUTTON
<button id="createtext" class="btn btn-success" value="PUBLISH">PUBLISH</button>
// PUBLISH AND SUBSCRIBE
Texts = new Mongo.Collection("texts");
if (Meteor.isServer) {
// This code only runs on the server
Meteor.publish("texts", function () {
return Texts.find();
});
}
if (Meteor.isClient) {
// This code only runs on the client
Meteor.subscribe("texts");
}
// ADJUSTED INSERT FUNCTIONS
Template.CreateText.events({
'click #createtext': function(event) {
/*
var textimagefile =
var texttitle = ;
var textText = ;
var imagescreators = ;
var textcreator = ;
var textlocation = ;
var textdate = ;
var texttags = ;
*/
Texts.insert ({
/*
ImageFileText: $('#ImageFileText').val(),
CreatorsText: $("#CreatorsImages").val(),
CreatorsImages: $("#CreatorText").val(),
LocationText: $("#LocationText").val(),
DateText : $("#DateText").val(),
TagsText: $("#TagsText").val()
*/
TitleText: $("#TitleText").val(),
TextText: $("#TextText").val(),
});
}
});