Meteor 流星:如何根据上次选择的结果进行选择
我有一个表单,可以在其中选择列表Meteor 流星:如何根据上次选择的结果进行选择,meteor,meteor-helper,Meteor,Meteor Helper,我有一个表单,可以在其中选择列表countryListanstateList。 每个国家都有一个集合country和“states” 根据所选国家,我希望状态列表仅显示属于所选国家的那些状态 在states集合中有一个field country,因此我可以根据它进行筛选 我无法处理创建状态列表的代码 经过数小时的实验、尝试和错误,我变成了这样: Template.registerPartnerStep2.events({ 'click #countryList': function (event
countryList
anstateList
。
每个国家都有一个集合country
和“states”
根据所选国家,我希望状态列表
仅显示属于所选国家的那些状态
在states集合中有一个field country,因此我可以根据它进行筛选
我无法处理创建状态列表的代码
经过数小时的实验、尝试和错误,我变成了这样:
Template.registerPartnerStep2.events({
'click #countryList': function (event, template) {
var x = myTrim($("#countryList").val());
var y = (Countrys.findOne({country: x}));
var z = y.nr;
},
'focus #stateList': function (event, template) {
event.preventDefault();
var x = myTrim($("#countryList").val());
var y = (Countrys.findOne({country: x}));
var z = y.nr;
if (typeof(this.stateSub) !== 'undefined') {
this.stateSub.stop();
}
this.stateSub = Meteor.subscribe('stateList', z);
}
})
有人能进一步帮助我吗
订阅国家/地区,网址为onCreated
对国家/地区变更事件作出反应/单击
国家/地区更改后,订阅州/地区列表
您的州/地区列表应该在数据到达时做出反应,一个查询本地集合的简单模板帮助器就足够了
编辑以供会话使用:
Template.registerPartnerStep2.events({
'change #countryList': function () {
var country = myTrim($("#countryList").val());
Session.set('selectedCountry', country)
}
});
我怎样才能使helper函数在更改国家/地区后运行?您需要一个侦听器,比如会话。将选定的国家/地区值设置为会话变量,并从helper函数中获取该值。
Template.registerPartnerStep2.helpers({
selectedCountryStates: function () {
var country = Session.get('selectedCountry');
return States.find({country: country})
}
});