Çok basit olması gereken bir şeyin cevabı için SO soruları ile tedirgin ediyordum ama hayatım boyunca bunu anlayamıyorum.Meteor-AutoForm: Başka bir kontrole dayanarak seçim seçenekleri nasıl güncellenir
<template name="processFormTemplate">
{{#autoForm id="processForm" collection="Processes" type=formAction doc=doc validation="blur"}}
<div class="col-md-12">
{{> afQuickField name="elementId" options=elements}}
{{> afQuickField name="categoryId" options=categories}}
{{> afQuickField name="title"}}
{{> afQuickField name="desc" rows=4}}
</div>
{{>formButtons}}
{{/autoForm}}
</template>
Bunlar daha sonra seçenekleri doldurmak için yardımcıları vardır: Temel olarak
İki seçme kontrolleri ile meteor Otomatik Form sahip
Template.processFormTemplate.helpers({
elements: function() {
return getFormElements();
},
categories: function(elementId) {
return getFormCategories(this.doc.elementId);
}
});
lib/methods.js
getFormElements = function() {
var options = [];
Elements.find({}, {sort: {ref:1}}).forEach(function (element) {
options.push({
label: element.title, value: element._id
});
});
return options;
};
getFormCategories = function(elementId) {
var options = [];
var filter = {};
if (!isBlank(elementId)) {
filter.elementId = elementId;
}
Categories.find(filter, {sort: {ref:1}}).forEach(function (d) {
options.push({
label: d.title, value: d._id
});
});
return options;
};
Şimdi bunun işe yaramadığını biliyorum çünkü yardımcı reaktif değil, ancak bu davranışı nasıl değiştireceğimi bilmiyorum r. Ben de 'değişim' olayı içine çengel denedim ama bu asla nedense basar:
Template.processFormTemplate.events({
'change #elementId': function(e) {
console.log($('[name="elementId"]').val() + ' is now selected');
}
});
gerekli davranış olduğunu yeni elementID ilk listede, ikinci seçenekleri listesinde seçildiğinde Seçilen elemanın temel alınarak yenilenmelidir.
Herhangi bir yardım çok takdir edilmektedir.
sayesinde David
Bu çözüm benim için çok çalıştı. Teşekkürler! – Aaron
merhaba - cevap için teşekkürler ... çözümünüzü aynı davranışı gerektiren birden çok biçimde nasıl kullanırdınız? – dsc
@Woppi Bölge autoform seçenekleri işlevinizde neden (Meteor.isClient()) olup olmadığınızı merak ederek ...? – Wes