遵循本教程:https://symfonycasts.com/screencast/stimulus/modal-form#play,我目前正在开发一个模态,我将在applying中注入一个symfony表单。我使用webpack和带有data-action的刺激控制器来打开我的modal,不幸的是它只显示了modal的背景,而不是modal本身。我在stackoverflow上搜索主题,但没有找到解决方案。下面是我的代码:
使用编辑按钮启动模态的命令行:
<div {{ stimulus_controller('modal', {formUrl: path('app_product_ora_edit', {'id': product_ora.id})}) }}>
<button class="dropdown-item" data-action="modal#openModal">
<i class="bi-pencil-square text-warning dropdown-item-icon">
</i> Editer
</button>
© 2018 - 2019 www.marticle.com版权所有并保留所有权利'Editer un produit O-RA',})}
模态:
<div class="modal fade" tabindex="-1" aria-hidden="true" data-modal-target="modalForm">
<div class="modal-dialog" id="modalForm">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">{{ modalTitle }}</h5>
<button type="button" class="btn-close"
data-bs-dismiss="modalForm"
aria-label="Close"></button>
</div>
<div class="modal-body" data-modal-target="modalFormBody">
{{ modalContent|default('Loading...') }}
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary"
data-bs-dismiss="modalForm">Cancel
</button>
<button type="button" class="btn btn-primary">
Save
</button>
</div>
</div>
</div>
</div>
控制器js的操作:
static targets = ['modalForm', 'modalFormBody'];
static values = {
formUrl: String,
}
async openModal(event) {
this.modalFormBodyTarget.innerHTML = 'Loading...';
const modalForm = new Modal(this.modalFormTarget);
modalForm.show();
console.log(this.formUrlValue);
this.modalFormBodyTarget.innerHTML = await $.ajax(this.formUrlValue);
}
提前感谢您提供的帮助。
1条答案
按热度按时间esbemjvw1#
好了,我找到了解决方案,我的modal是在我的产品列表的tr标签中声明的,我必须在tr标签之外声明它才能工作:
谢谢你们的帮助。