meteor:如何根据之前的选择结果进行选择

时间:2015-05-11 10:09:22

标签: meteor meteor-helper

我有一个表单可以选择其中的列表countryListstateList。 其中每个都有一个集合countrys和'状态。

根据所选国家/地区,我希望stateList仅显示属于所选国家/地区的州。

在州集合中有一个字段国家,所以我可以根据它进行过滤。

我无法处理代码来创建stateList ????

经过数小时的实验,试验和错误后,我变得像这样:

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);

}
})

有人可以帮助我吗?

2 个答案:

答案 0 :(得分:0)

  1. 通过onCreated订阅国家/地区。
  2. 对国家/地区的事件做出更改/点击。
  3. 国家/地区更改后,订阅州/地区列表
  4. 您的州/地区列表应该在数据到达时做出反应,查询本地馆藏的简单模板助手就足够了。

答案 1 :(得分:0)

会话使用的编辑:

Template.registerPartnerStep2.events({

    'change #countryList': function () {
        var country = myTrim($("#countryList").val());
        Session.set('selectedCountry', country)
    }

});


Template.registerPartnerStep2.helpers({

    selectedCountryStates: function () {
        var country = Session.get('selectedCountry');
        return States.find({country: country})
    }

});