c# - 使用多个提交按钮

标签 c# javascript asp.net-mvc submit

我当前遇到一个问题,当我转到某个页面并单击其中一个按钮时,我收到页面无法显示错误消息。我意识到,因为我有多个提交按钮,当我单击一个按钮时,它不知道要启动什么。这是我当前拥有的按钮:

<button class="glossyBtn" type="submit" name="submitButton" value="@Html.Encode(Kids.Resources.Message.Ok)">
                            <img alt="" style="vertical-align: middle; margin-right:1px" src="@Url.Content("~/Content/blueprint/plugins/buttons/icons/tick.png")" />
                        <span style="vertical-align: middle">Ok</span> 
                            </button>

这是我的 .cshtml 页面中的内容:

 @using (Html.BeginForm("Manage", "Invoice"))
        {
            <fieldset id="contentView">
                <div class="row">

                    @Html.Raw(Html.DatePickerEnable())
                    <fieldset>

                        <span>@Kids.Resources.Entities.Billing.BillingStatus</span> @Html.EditorFor(m => m.BillingStatuses)
                        <br />
                    <div style="float:left; width:320px">
                        <span>Begin Date</span> @Html.EditorFor(m => m.BeginDate) @Html.ValidationMessageFor(m
                    => m.BeginDate)
                        <span>End Date</span> @Html.EditorFor(m => m.EndDate) @Html.ValidationMessageFor(m
                    => m.EndDate)
                     <div style="background-color: white;" class="bubble">@Html.ValidationSummary(true, Message.ValidationErrorSummary, new { @class = "error" })</div>
                    </div>
                    <button class="glossyBtn" type="submit" name="submitButton" value="@Html.Encode(Kids.Resources.Message.Ok)">
                            <img alt="" style="vertical-align: middle; margin-right:1px" src="@Url.Content("~/Content/blueprint/plugins/buttons/icons/tick.png")" />
                        <span style="vertical-align: middle">Ok</span> 
                            </button>
                    </fieldset>

                </div>

@if (Model.Invoices != null)
                {
                    <div class="row">
                        @Html.Grid(Model.Invoices).Attributes(id => "Invoices").Columns(column =>
                                        {
                                            column.For(i => i.CanAddItems ? string.Format(
                                                "<a class='noStyle' href='{0}' title='Edit'><img src='{1}'/></a>",
                                                Url.Action("Prepare", "Invoice", new { invoiceId = i.InvoiceId }),
                                                Url.Content("~/Content/images/pencilEdit.png")) : string.Empty).Sortable(false).Encode(false);
                                            column.For(i => i.CanPay ? string.Format(
                                                "<a class='noStyle' href='{0}' title='Pay'><img class='pic' src='{1}'/></a>",
                                                Url.Action("Pay", "Invoice", new { invoiceId = i.InvoiceId }),
                                                Url.Content("~/Content/images/moneySign.png")) : string.Empty).Sortable(false).Encode(false);
                                            column.For(i => i.CanVoid ? string.Format(
                                                "<a class='noStyle' href='{0}' title='Void'><img class='pic' src='{1}'/></a>",
                                                Url.Action("Void", "Invoice", new { invoiceId = i.InvoiceId }),
                                                Url.Content("~/Content/images/newVoid.png")) : string.Empty).Sortable(false).Encode(false);
                                            if (Kids.Common.KidsSettings.Settings.SubmissionInvoice)
                                            {
                                                column.For(i => i.CanSubmit ? string.Format(
                                                "<a class='noStyle' href='{0}' title='{2}'><img class='pic' src='{1}'/></a>",
                                                Url.Action("Files", "PaymentVoucherFile", new { invoiceId = i.InvoiceId }),
                                                Url.Content("~/Content/images/newVoucher.png"), Kids.Resources.Ocr.PaymentVoucherFile) : string.Empty).Sortable(false).Encode(false);
                                            }
                                        }).Empty(string.Format("No {0}", Kids.Resources.Entities.Billing.Invoices)).Sort(Model.GridSortOptions)
                        <p />

我浏览了整个网站,发现工作量似乎有点太多了。我可以在同一页面上执行一些简单的操作,例如 javascript 或其他操作,而不是更改两个或三个文件。

准备 - 付款 - 作废也是包含相同结构和相同提交按钮的表单。

最佳答案

如果您有许多不同表单的提交按钮,那么在 javascript 中使用如下所示的内容:

var form = $(document.forms['formName'])//或使用 $(document.forms[0]) 等索引

然后 form.submit();这些按钮将需要 onclick 操作并 type='button'

希望这有帮助

关于c# - 使用多个提交按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12627916/

相关文章:

javascript - 为 jQuery(或其他静态文件/脚本)使用 CDN 真的是个好主意吗?

asp.net-mvc - 验证日期格式不起作用

c# - 我可以使用 javascript 移动 div 并保留其回发能力吗?

c# - 如何在 C# 正则表达式中使用内联修饰符?

时间:2019-03-08 标签:c#gridviewmultiplefilter

javascript - React Native panresponder 元素可点击?

c# - 将 Ping 应用程序转换为多线程版本以提高速度 - C#

javascript - 如何在 JavaScript 中将数字格式化为百分比值?

c# - 可扩展的 ASP.NET MVC Web 应用程序

asp.net-mvc - Ajax.ActionLink 的问题