【发布时间】:2019-02-20 21:51:08
【问题描述】:
注意:我已经尝试了针对我的问题在网上找到的各种解决方案,但都没有奏效。
我正在尝试传递表格中的内容,其中每一行都有自己的按钮来编辑该行中的内容。该按钮会打开一个 Twitter Bootstrap 下拉菜单,其中有两个按钮,一个是“编辑”按钮。编辑按钮打开一个具有文本区域输入的模式。我希望文本区域在表格中显示当前文本以进行编辑。我将 PHP 与 Symfony 一起用于表单和 Twig 用于页面渲染。
触发模态的按钮
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<button class="btn btn-sm dropdown-item edit-button" data-toggle="modal" data-target="#announcementEditModal" data-id="{{ announcement.id }}" data-content="{{ announcement.content }}" type="button">
<div class="announcement-actions">
<span class="fas fa-pencil-alt"></span> Edit announcement
</div>
</button>
模态
<div class="modal fade" id="announcementEditModal" tabindex="-1" role="dialog" aria-hidden="true">
<div class="modal-dialog modal-lg" role="document">
<div class="modal-content">
<div class="modal-header announcement-header">
<h5 class="modal-title" id="exampleModalLabel"><span class="fas fa-edit"></span> Edit new announcement</h5>
</div>
<div class="announcement-card-header card m-3 border-0">
<div class="announcement-card-header card-body border-0 p-1">
<span class="fa fa-info-circle fa-lg header-icon"></span>
<h5 class="align-header">ANNOUNCEMENT TEXT</h5>
</div>
<div class="announcement-card-body modal-body card border-0">
{{ form_start(editForm) }}
<div class="announcement-card-body">
<label for="exampleInputEmail1">ANNOUNCEMENT (SUPPORTS MARKDOWN)</label>
<textarea class="form-control" id="announcementText" rows="5" name="content"></textarea>
</div>
</div>
</div>
<div class="card-footer border-0 bg-white pt-0">
<div>
{{ form_widget(editForm.edit, {'left_icon': 'fas fa-check'}) }}
<button type="button" class="btn btn-light" data-dismiss="modal" aria-label="Close">
Cancel
</button>
</div>
</div>
{{ form_end(editForm) }}
</div>
</div>
</div>
JavaScript
<script type="text/javascript">
$(".edit-button").click(function(){
var content = $(this).data("content");
alert(content);
});
$('#announcementEditModal').on('shown.bs.modal', function () {
alert("modal open");
document.getElementById("#announcementText").val(content);
})
</script>
alert("modal open") does not fire.I have tried'shown.bs.modal'and'show.bs.modal'`。我正在使用 Bootstrap 4.12
编辑:解决方案:一旦我将 JS 移到了一个通知文件。
【问题讨论】:
标签: javascript jquery html twig