Я устанавливаю проект веб-приложения asp.net. Приступая к проблеме сейчас:
(Я новичок в Ajax, JQuery и Asp.net)
1) Я нашел способ сохранить идентификаторы отмеченных флажков в строке «CommaSeparatedIDs» - в файле Index.cshtml (функция SaveFinished ())
2) Определение функции «SaveFinished ()» в «Index.cshtml.cs». Я не знаю, как определить функцию / где определить ее в файле. Назначение функции: имеет строковый параметр, определенный в 1), который управляет базой данных, используя идентификаторы.
3) Наконец, моя реализация SaveFinished () может содержать ошибки, на которые я не могу указать.
Я пытался определить функцию «SaveFinished ()» в разных областях «Index.cshtml.cs», и функция никогда не распознавалась и не ссылалась, я не знаю, какой должен быть тип функции.
Index.cshtml:
<table class="table" id="MainTable"> // (Table used to define the various entries)
...
...
<th>
<a class="btn btn-success" onclick=SaveFinished()>Done</a> // JS function SaveFinished()
</th>
...
...
@foreach (var item in Model.ExcelData) // ExcelData is the object defined in Index.cshtml.cs (given below)
<tr>
<td>
<input id="@item.ID" type="checkbox" />
</td>
...
...
</tr>
// I think I have errors below which I can't figure out.
<script>
var SaveFinished = function () {
var ArrItem = [];
var CommaSeparatedIDs = "";
$("MainTable tbody tr input[type=checkbox] ").each(function () {
debugger
var checkId = $(val).attr("id");
var IsChecked = $("#" + checkId).is(":checked", true);
if (IsChecked) {
ArrItem.push(checkId);
}
})
if (ArrItem.length != 0) {
CommaSeparatedIDs = ArrItem.toString();
$.ajax({
url: "/Excel_Data/Index", <!--This should be the URL of the page?-->
type: "POST",
data: { MainTable: CommaSeparatedIDs },
success: function (response) {
<!-- What should I do here? I'm new to Ajax and JQuery -->
}
})
}
}
</script>
Index.cshtml.cs:
namespace Customer.Pages.Excel_Data
{
public class IndexModel : PageModel
{
private readonly Customer.Models.CustomerContext _context;
public IndexModel(Customer.Models.CustomerContext context)
{
_context = context;
}
#region Variables
public async Task OnGetAsync()
{
#region Data manipulation and setting variables
}
}
}
Мой ожидаемый результат - передать строку «CommaSeparatedIDs» в функции «SaveFinished ()» в логическую часть страницы - «Index.cshtml.cs» и управлять базой данных.