Autoform流星可靠/级联选择

时间:2015-05-15 16:37:37

标签: select drop-down-menu meteor cascadingdropdown meteor-autoform

如何在流星中使用autoform实现3个相关选择? 以下是我需要实现的示例JPA 2.0 specification 在此先感谢您的任何帮助

2 个答案:

答案 0 :(得分:0)

您可以为您的选择添加一个事件监听器,当它发生变化时,更新您在表单中的下一个选择(或所有选择)的选择助手。它将类似于以下示例,但更新"选项"对象取决于不同选择输入选择的内容。

http://autoform.meteor.com/select

答案 1 :(得分:0)

这就是我解决它的方式。但是,对于第三个选择在第一个选择更新后返回所选值,我必须使用JQuery。这可能对需要类似东西的人有所帮助。但如果有更好的方法,请告诉我。

Organizaciones = new Mongo.Collection('organizaciones');

Organizaciones.attachSchema(new SimpleSchema({ provincia: { type: String, label: 'Provincia', autoform: { type: 'select', firstOption: '', options: function () { return DPA.find({grupo: 'Provincia'}).map(function (dpa) { return {label: dpa.descripcion, value: dpa.codigo}; }); } } }, canton: { type: String, label: 'Cantón', autoform: { type: 'select', firstOption: '', options: function () { var codigoProvincia = AutoForm.getFieldValue('provincia'); var cantones = new RegExp('^' + codigoProvincia + '[\d]{2}$'); return DPA.find({codigo: {$regex: cantones}}).map(function (dpa) { return {label: dpa.descripcion, value: dpa.codigo}; }); } } }, parroquia: { type: String, label: 'Parroquia', autoform: { type: 'select', firstOption: '', options: function () { $('#provincia').change(function() { $('#parroquia option[value!=""]').remove(); }); var codigoCanton = AutoForm.getFieldValue('canton'); var parroquias = new RegExp('^' + codigoCanton + '[\d]{2}$'); return DPA.find({codigo: {$regex: parroquias}}).map(function (dpa) { return {label: dpa.descripcion, value: dpa.codigo}; }); } } } }));