У меня есть форма внутри модала, которая отлично работает с кнопками отправки и очистки на модале.
Форма отображается внутри модала с использованием метода @RenderPage () из ASP. NET.
Я хотел добавить кнопку в форму, и при нажатии я хотел, чтобы эта кнопка напечатала мне Hello на консоли, но ничего не происходит.
Вот код:
Это мой модальный код внутри файла Index.cs html:
<div id="addItemViewModal" class="modal">
<div class="modal-dialog modal-lg">
<div class="modal-content">
<div class="modal-header">
<h4 class="modal-title">Add Report Catalogue</h4>
<button type="button" class="close" data-dismiss="modal">X</button>
</div>
@RenderPage("FormBody.cshtml");
<div class="modal-footer">
<button type="submit" class="btn btn-success" form="reportCatalogueForm">Save</button>
<button id="btnClearFormAddItem" type="button" class="btn btn-danger">Clear</button>
</div>
</div>
</div>
</div>
<button id="btnShowAddItemModal" class="btn btn-secondary" type="button">Add Report Catalog</button>
Это часть моего кода формы внутри файла FormBody.cs html с кнопкой и сценарием в end:
<form id="reportCatalogueForm" method="post">
@Html.ValidationSummary(true, "", new { @class = "text-danger" })
<div id="formPage1">
@Html.HiddenFor(model => model.ReportCatalogue.Id)
<div class="form-group">
@Html.LabelFor(model => model.ReportCatalogue.ComponentName,
htmlAttributes: new { @class = "control-label col-md-6" })
<div class="col-md-8">
@Html.EditorFor(model => model.ReportCatalogue.ComponentName,
new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReportCatalogue.ComponentName,
"", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReportCatalogue.ComponentDescription,
htmlAttributes: new { @class = "control-label col-md-6" })
<div class="col-md-12">
@Html.EditorFor(model => model.ReportCatalogue.ComponentDescription,
new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReportCatalogue.ComponentDescription,
"", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReportCatalogue.OwnerName,
htmlAttributes: new { @class = "control-label col-md-6" })
<div class="col-md-8">
@Html.EditorFor(model => model.ReportCatalogue.OwnerName,
new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReportCatalogue.OwnerName,
"", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReportCatalogue.OwnerEmail,
htmlAttributes: new { @class = "control-label col-md-6" })
<div class="col-md-10">
@Html.EditorFor(model => model.ReportCatalogue.OwnerEmail,
new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReportCatalogue.OwnerEmail,
"", new { @class = "text-danger" })
</div>
</div>
<div class="form-group">
@Html.LabelFor(model => model.ReportCatalogue.OwnerRole,
htmlAttributes: new { @class = "control-label col-md-6" })
<div class="col-md-6">
@Html.EditorFor(model => model.ReportCatalogue.OwnerRole,
new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(model => model.ReportCatalogue.OwnerRole,
"", new { @class = "text-danger" })
</div>
</div>
<br />
<button class="btn btn-secondary formButton" type="button" onclick="test()">Next</button>
</div>
.
.
.
<script>
function test(){
console.log('Hello');
};
</script>
По какой-то причине эта функция никогда не вызывается, не знаю, как это сделать, потому что эта страница отображается с помощью Razor @RenderPage () или это что-то, что я отсутствует здесь ??
Кто-нибудь может мне помочь с этим?
С наилучшими пожеланиями