如何解决TinyMCE 5 和 Bootstrap 3.4.1 Modals — 只工作一次
我有一个引导模式,它有 2 个 textarea
块,我需要一个富文本编辑器。我正在使用 Bootstrap 3.4.1 和 TinyMCE 5。我可以让编辑器在第一次打开模态时正常工作,但在随后的每次打开时,它都会恢复到常规的 textarea
。我已经尝试了以下所有方法,但无法使其正常工作。可能是因为我把脚本放在了错误的位置,但到目前为止没有任何效果:
Dynamically Add and remove TinyMCE editor with jQuery
Fiddle
Fiddle
TinyMCE and Bootstrap Modals — Works only one time
这里是调用模态的页面。这是一个局部视图:
@model TEST.ViewModels.IssueViewModel
<div id="partialContent">
<div id="modal-container" class="modal fade" tabindex="-1">
<div class="modal-dialog modal-lg">
<div class="modal-content">
</div>
</div>
</div>
<table width="100%">
<tr>
<td class="titlebox2">
@if ((DateTime.Today - @Model.IssueData.StatusList[0].StatusDate).Value.TotalDays > 7)
{
<a href="@Url.Action("CreateEdit",new { controller = "Issue",issueid = Model.IssueData.issueId,addedit = "add" })" class="modal-link btn btn-success">Add New Status</a>
}
else
{
<a href="@Url.Action("CreateEdit",addedit = "edit" })"
class="modal-link btn btn-success">Edit Current Status</a>
}
</td>
</tr>
</table>
</div>
<script type="text/javascript">
$('#partialContent').on('click','.modal-link',function () {
var actionUrl = $(this).attr('href');
$.get(actionUrl).done(function (data) {
$('#partialContent').find('.modal-content').html(data);
});
$(this).attr('data-target','#modal-container');
$(this).attr('data-toggle','modal');
});
$('#partialContent').on('click','.relative',function (e) {
e.preventDefault();
var form = $(this).parents('.modal').find('form');
var actionUrl = form.attr('action');
var dataToSend = form.serialize();
$.post(actionUrl,dataToSend).done(function (data) {
$('#partialContent').find('.modal-content').html(data);
var isValid = $('#partialContent').find('[name="IsValid"]').val() == 'True';
var issueid = "";
issueid = $('body').find('[name="issueidSaved"]').val();
if (isValid) {
$('#partialContent').find('#modal-container').modal('hide');
$("#partialContent").load('/Issue/GetUpdatedStatus');
}
});
})
$('#partialContent').on('click','.close',function () {
$('#partialContent').find('#modal-container').modal('hide');
});
$("form").submit(function () {
if ($('form').valid()) {
$("input").removeAttr("disabled");
}
});
</script>
这是模态代码:
@model TEST.ViewModels.StatusViewModel
<!--Modal Body Start-->
<script src="~/lib/tinymce/tinymce.min.js"></script>
<script src="~/lib/tinymce/jquery.tinymce.min.js"></script>
<script type="text/javascript">
$(function () {
tinymce.init({
selector: 'textarea',menubar: false,plugins: [
'advlist autolink lists link charmap','searchreplace','insertdatetime table paste wordcount'
],toolbar: 'undo redo | ' +
'bold italic underline forecolor backcolor | alignleft aligncenter ' +
'alignright alignjustify | bullist numlist outdent indent |link charmap ' +
'removeformat'
});
});
</script>
<div class="modal-content">
<input name="IsValid" type="hidden" value="@ViewData.ModelState.IsValid.ToString()" />
<input name="issueidSaved" type="hidden" value="@ViewBag.ID" />
<!--Modal Header Start-->
<div class="modal-header">
<h4 class="modal-title">Add New Status</h4>
</div>
<div><span style="color:red;font-size:larger"> *</span> <span style="color:red">Indicates a required field</span></div>
<br />
<!--Modal Header End-->
<form asp-action="CreateEdit" asp-controller="Issue" method="post" enctype="multipart/form-data">
@Html.AntiForgeryToken()
<div class="modal-body form-horizontal">
<div class="form-group row ">
@Html.HiddenFor(model => model.addedit)
@Html.HiddenFor(model => model.IssueID)
@Html.HiddenFor(model => model.StatusDate)
<label class="col-sm-2 col-form-label">Status<span style="color:red;font-size:larger">*</span></label>
<div class="col-sm-10">
<textarea asp-for="@Model.Status" class="form-control" rows="10" placeholder="Enter Status Here">@Model.Status</textarea>
<span asp-validation-for="@Model.Status" class="text-danger"></span>
</div>
</div>
<div class="form-group row">
<label class="col-sm-2 col-form-label">Next Steps<span style="color:red;font-size:larger">*</span></label>
<div class="col-sm-10">
<textarea asp-for="@Model.NextStep" class="form-control" rows="10" placeholder="Enter Next Steps Here">@Model.NextStep</textarea>
<span asp-validation-for="@Model.NextStep" class="text-danger"></span>
</div>
</div>
<!--Modal Footer Start-->
<div class="modal-footer">
<button data-dismiss="modal" id="cancel" class="btn btn-default" type="button">Cancel</button>
<input type="submit" class="btn btn-success relative" id="btnSubmit" data-save="modal" data-dismiss="modal" data-backdrop="false" value="Submit">
</div>
<div class="row">
</div>
</div> <!--Modal Footer End-->
</form>
</div>
<!--Modal Body End-->
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。