请帮助我使用Meteor js中的反应模态,首先我注意到如果我从模态模板中的jQuery选择器获取一些值,我只在第一个模态“show()”上获得了适当的值,在第一个模式后,他给了我相同的值每次点击。 然后我看代码有很多不同id的模态(id =“rm-1e7385aa-4ca8-491b-be4e-81baa2afffbc”),可能会导致问题。 我尝试使用模板保留,但没有成功。 你能帮我解决这个问题吗?
代码与此类似,
// Reactive Table events
Template.reactiveTebleList.events({
'click .reactive-table tbody tr': function (event) {
var rd_editorder = ReactiveModal.initDialog(rm_EditOrder);
rd_editorder.show();
}
});
var rm_EditOrder = {
type: 'type-default',
template: Template.tmp_EditOrder,
title: "Edit Order",
removeOnHide: true,
closable: true,
buttons: {
"cancel": {
class: 'btn-danger',
label: 'Cancel'
},
"ok": {
closeModalOnClick: true,
class: 'btn-info',
label: 'Back'
}
}
};
Template.tmp_EditOrder.events({
'click #saveposition': function(e){
var selectedPosition = $('#selectPosition').find(":selected").text();
console.log("selectedPosition: " + selectedPosition);
rm_EditOrder.hide();
},
<template name="tmp_EditOrder">
<select class="form-control" id="selectPosition">
{{#each position}}
<option>{{this}}</option>
{{/each}}
</select>
<button type="submit" id="saveposition" class="btn btn-primary">Save Position</button>
</template>
答案 0 :(得分:1)
在每个模态关闭时使用$(".modalClass").remove()
;或使用为您处理该过程的流星包。我一直在使用https://github.com/pahans/reactive-modal。正如您在此软件包的文档中所看到的,在关闭模态时,将为您完成模式dom的移除。注意removeOnHide
如果你想保留模态的dom,也可以设置为true。
var shareDialogInfo = {
template: Template.appShareDialog,
title: "Share the app",
modalDialogClass: "share-modal-dialog", //optional
modalBodyClass: "share-modal-body", //optional
modalFooterClass: "share-modal-footer",//optional
removeOnHide: true, //optional. If this is true, modal will be removed from DOM upon hiding