C# MVC checkbox javascript ajax или C# action каким образом я должен это сделать?
Всем привет,
У меня есть представление, в котором есть таблица со строками записей. Перед каждой строкой я поставил отдельный флажок. В настоящее время я нахожусь в процессе определения того, установлен ли этот флажок или нет. Мне было интересно, должен ли я сделать свой щелчок по кнопке с помощью javascript и ajax, чтобы определить, какие записи имеют выбранный флажок с помощью этих флажков я распечатаю отчет rdlc о том, что было выбрано. Или мне следует использовать кнопку HTMLActionlink, чтобы перейти прямо к контроллеру и посмотреть, что было выбрано. Какой путь будет быстрее и лучше? Кроме того, как правильно я должен это сделать?
MVC View <input type="button" class="btn btn-primary" name="command" id="btnGetChecks" value="Generate Selected" /> <table class="table" id="maintbl"><thead>…</thead> <tbody id="maintblbody"> @for (int i = 0; i < Model.ListQuotes.Count; i++) { var current = Model.ListQuotes[i]; <tr> <td> @Html.CheckBox(i+"_Row", true, new { value = @Model.ListQuotes[i].QuoteID }) </td><td> //<input type="checkbox" class="checkbox" name="checks" id="@(i + "_Row")" value="@Model.ListQuotes[i].QuoteID" /> </td> @for (int j = 0; j < Model.Settings.Columns.Length; j++) { if (Model.Settings.Show[j]) { var quote = current.GetType().GetProperties().Where(x => x.Name.Equals(Model.Settings.Columns[j])).First(); <td style="padding-right:20px;">@quote.GetValue(current, null)</td> } } <td> <button type="button" class="openModal btn btn-danger" data-quoteid="@Model.ListQuotes[i].QuoteID"> Edit </button> </td> </tr> } </tbody> <script> $('#btnGetChecks').on('click', function () { var quotes = []; var quoteid = $(this).attr("value"); var chkboxtable = $('#maintbl'); var //$('input:checked').each(function() { // quotes.push($(this).attr("value")); //}); with 0 - ^(0|\+?[1-9]\d*)$ /^-?[0-9]+$/ // $(this).val($(this).val().replace(/[^\d].+/, "")); // if (!(keyCode >= 48 && keyCode <= 57) $('input[type=checkbox]').each(function () { if (this.checked==true) { if (IsPositiveInteger(quoteid)) { quotes.push($(this).attr("value")); } } }); alert(quotes); }); <script>
Что я уже пробовал:
Вот что я сейчас имею, мне очень любопытно услышать, что вы все должны сказать. У меня есть идентификатор каждой цитаты, прикрепленной к флажку. Я хотел протолкнуть допустимые из них в массив, но пока мой текущий код этого еще не делает. Я чувствую, что близок к этому.