Meteor 流星选择的形式问题?
我有两个选择项目在一个国家和州的形式,取决于在国家的选择第二选择作为其他国家的价值观在它 当我在一个空的表单中执行它时,它就起作用了。代码如下: Template.registerPartnerStep2.events{ “更改国家列表”:函数事件,模板{ 违约事件; var x=myTrim$countryList.val; var y=Countrys.findOne{country:x}; var z=y.nr; iftemplate.stateSub!=空{ template.stateSub.stop; } template.stateSub=Meteor.subscribe'stateList',z; }, “更改状态列表”:functionevent,模板{ 违约事件; var x=myTrim$stateList.val; 如果template.citySub!=null{ template.citySub.stop; } template.citySub=Meteor.subscribe'cityList',x; }, 我的模板的一部分:Meteor 流星选择的形式问题?,meteor,Meteor,我有两个选择项目在一个国家和州的形式,取决于在国家的选择第二选择作为其他国家的价值观在它 当我在一个空的表单中执行它时,它就起作用了。代码如下: Template.registerPartnerStep2.events{ “更改国家列表”:函数事件,模板{ 违约事件; var x=myTrim$countryList.val; var y=Countrys.findOne{country:x}; var z=y.nr; iftemplate.stateSub!=空{ template.state
{{#with addressFormData}}
<form id="partnerAddressForm" class="form-horizontal" role="form">
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"Company"}}</label>
<div class="col-sm-10">
<input type="text" placeholder="{{_"Company name"}}" id="company" class="form-control" value="{{partner_company}}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"VAT nr"}} </label>
<div class="col-sm-10">
<input type="text" placeholder="{{_"VAT nr"}}" id="vatNr" class="form-control" value="{{partner_vat_nr}}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"Phone"}}"</label>
<div class="col-sm-4">
<input type="text" placeholder="{{_"Phone"}}" id="phoneNr" class="form-control" value="{{partner_phone_nr}}">
</div>
<label class="col-sm-2 control-label" for="textinput">{{_"Mobile"}}</label>
<div class="col-sm-4">
<input type="text" placeholder="{{_"Mobile"}}" id="mobileNr" class="form-control" value="{{partner_mobile_nr}}">
</div>
</div>
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"Line 1"}}</label>
<div class="col-sm-10">
<input type="text" placeholder="{{_"Address Line 1"}}" id="addressLine1" class="form-control" value="{{partner_address_line_1}}">
</div>
</div>
<!-- Text input-->
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"Line 2"}}</label>
<div class="col-sm-10">
<input type="text" placeholder="{{_"Address Line 2"}}" id="addressLine2" class="form-control" value="{{partner_address_line_2}}">
</div>
</div>
<!-- Text input-->
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"Country"}}</label>
<div class="col-sm-10">
<select id = "countryList" placeholder="{{_"Country"}}" class="form-control">
<option disabled selected>{{_"-- select an option --"}} </option>
<option selected="selected">{{partner_country}}</option>
{{#each countrys}}
{{> country}}
{{/each}}
</select>
</div>
</div>
<!-- Text input STATE ZIPCODE-->
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"State"}}</label>
<div class="col-sm-4">
<select id = "stateList" placeholder="{{_"State"}}" class="form-control" value="{{partner_state}}">
<option disabled selected>{{_"-- select an option --"}}</option>
<option selected="selected">{{partner_state}}</option>
{{#each states}}
{{> state}}
{{/each}}
</select>
</div>
<label class="col-sm-2 control-label" for="textinput">{{_"zipcode"}}</label>
<div class="col-sm-4">
<input type="text" id=zipcode placeholder="{{_"zipcode"}}" class="form-control" value="{{partner_zipcode}}" readonly>
</div>
</div>
<!-- Text input CITY-->
<div class="form-group">
<label class="col-sm-2 control-label" for="textinput">{{_"City"}}</label>
<div class="col-sm-10">
<select id = "cityList" placeholder="City" class="form-control" value="{{partner_city}}">
<option disabled selected>{{_"-- select an option --"}} </option>
<option selected="selected">{{partner_city}}</option>
{{#each citys}}
{{> city}}
{{/each}}
</select>
</div>
</div>
<!-- Button SUBMIT-->
<div class="col-sm-12 controls">
第一个问题是,当select中已经有值时,我如何修复它以使其在编辑模式下工作
我在选择中填写以下内容:
{{伙伴国}
但这已经带来了一个问题,当我在列表中选择时,所选值会被列出两次
第二个问题:由于事件为“更改”,状态列表仅显示所选状态中的一个!当添加事件时,单击状态列表我必须始终在列表上单击两次,然后才能填充集合
谢谢!我想主要的一点是,您不应该担心填充选择。我们不必再接触DOM,因为如果您正确设置Meteor,它会自动反应 您只需要设置要从集合中填充的选择,然后确保Meteor在选择更改时做出反应 Meteor中有很多东西是自动反应的——它们只是工作而已。例如,如果你的模板显示一个记录列表,而有人在数据库中插入了一条新记录,Meteor只会显示新记录,因为Blaze会反应性地显示新插入的记录 我尽量只使用Meteor提供的开箱即用的自动反应对象 然而,在我们的例子中,我使用了一个会话变量和另一个反应源来确保Meteor反应 每当国家选择更改时,我们都会设置一个“statenr”会话变量。我们在states helper中使用相同的会话变量从states集合中获取状态。由于我们的会话变量是被动的,所以无论何时更改,Meteor都会返回states集合并再次获取状态。因此,我们的states select对象会更改Meteor为我们设计的,我们不需要重新填充,所以我们不存在重复状态的问题 我为您做了一个Meteopad示例,以便您了解我的意思: 要将所选国家/地区和州输入到选择中,您需要以下代码:
Template.registerHelper('selected', function(key, value){
return key == value ? {selected:'selected'}: '';
});
我从这个稍微过时的第二页答案中得到的
然后调用助手see{{selected partner.statenr}}从模板中分别如下所示:
<select id="partnerStates">
<option disabled selected value="">Choose a state</option>
{{#each states partner.countrynr}}
<option value="{{nr}}" {{selected partner.statenr nr}}>
{{name}}
</option>
{{/each}}
</select>
如果你回到Meteopad,你可以看到它在页面的下半部分工作。启动时,我用德国和Ost Friesland nrs填写了一份合作伙伴记录,然后在页面的下半部分的模板中显示它。请显示模板的相关部分,谢谢更改文本并包括部分模板!明天我花一天的时间去p再深入一点,我现在告诉你任何问题!感谢你为帮助某人所付出的所有精力!很高兴看到meteor社区如此优秀!你好,我已经在自己工作了。当你以一种形式使用它时,困难开始了,在程序开始时,这些字段不仅是空的添加新记录,而且当我们使用它时s在必须编辑现有记录的上下文中!我如何将集合中的值放入“选择”字段?如果我的问题不清楚,我将用一个可以添加和编辑记录的表单更改您的示例谢谢!好的,看看您是否可以用一个尽可能具体的示例来说明。您好,我的testapp位于zawadi.met上eor.com尝试创建一个合作伙伴正常情况下,在注销后选择工作正常,并使用此合作伙伴id和passw登录,然后您进入配置文件页面,在那里您将看到已填写的国家/地区城市。尝试更改国家/地区城市,您将看到问题!当我再次登录时,无法看到任何国家/地区城市,这是b在用户配置文件仪表板位下方的空白处,Chrome开发者控制台中出现错误:ReferenceError:模板未定义这是因为您创建了一个普通用户而不是合作伙伴,您可以使用登录louis@test.be密码:rw1313ikke