zu buchen Ich habe eine Teilansicht in meinem asp.net-Kernprojekt und ich möchte alle input
und select
und editor
Werte auf Controller mit AJAX. Ich kann alle input
und select
Tag an Controller, aber nicht CkEditor-Wert buchen.Wie den CKEDITOR-Wert zusammen mit anderen Eingaben über AJAX
Natürlich kann ich den CkEditor-Wert in jQuery abrufen, kann es aber nicht auswählen.
Teilansicht:
@model LibraryProject.Models.ViewModels.AddEditBookViewModel
<form method="post" enctype="multipart/form-data">
<div class="modal-body form-horizontal">
<div class="row">
<div class="form-group">
<label asp-for="BookName" class="col-lg-2 col-sm-2 control-label"></label>
<div class="col-lg-6">
<input asp-for="BookName" class="form-control" />
</div>
</div>
<div class="form-group">
<label asp-for="BookDescription" class="col-lg-2 col-sm-2 control-label"></label>
<div class="col-lg-9">
<textarea id="BookDescription" name="BookDescription" asp-for="BookDescription" class="form-control"></textarea>
</div>
<script type="text/javascript">
CKEDITOR.replace('BookDescription');
</script>
</div>
<div class="form-group">
<label asp-for="BookGroupID" class="col-lg-2 col-sm-2 control-label"></label>
<div class="col-lg-6">
<select asp-for="BookGroupID" asp-items="@Model.BookGroups" class="form-control"></select>
</div>
</div>
<div class="form-group">
<label asp-for="AuthorID" class="col-lg-2 col-sm-2 control-label"></label>
<div class="col-lg-6">
<select asp-for="AuthorID" asp-items="@Model.Authors" class="form-control"></select>
</div>
</div>
<div class="form-group">
<label asp-for="BookPageCount" class="col-lg-2 col-sm-2 control-label"></label>
<div class="col-lg-6">
<input asp-for="BookPageCount" class="form-control" />
</div>
</div>
<input type="file" id="files" name="files" multiple />
</div>
</div>
<div class="modal-footer">
<input type="button" id="submitinfo" class="btn btn-success" value="Add Book" />
</div>
</form>
und mein jQuery-Code:
<script>
$(document).on('click', '#submitinfo', function (evt) {
evt.preventDefault();
var fileupload = $("#files").get(0);
var files = fileupload.files;
var data = new FormData();
for (var i = 0; i < files.length; i++) {
data.append('files', files[i]);
}
//In this line I can get editor value
var editorval = CKEDITOR.instances['BookDescription'].getData();
//***here i can post all input and select tag value but can`t post editor value along with other
$('input,select').each(function (x, y) {
data.append($(y).attr("name"), $(y).val());
});
$.ajax({
type: "post",
url: '@Url.Action("AddBook", "Book")',
contentType: false,
processData: false,
data: data
}).done(function (res) {
if (res.status === "success") {
alert(res.message);
} else {
$.each(res.errors, function (a, b) {
alert(b);
});
}
}).fail(function (xhr, b, error) {
alert(error);
});
});
</script>
Nun, wie kann ich Editor Wert zusammen mit anderen Posten, wo es mit 3 Sternen in der jQuery markiert Code?