簡體   English   中英

ASP.Net MVC,使用javascript提交表單

[英]ASP.Net MVC, Submit a form using javascript

我在我使用以下代碼創建的一個ASP.Net MVC視圖上有一個表單

 <% using (Html.BeginForm(null, null, FormMethod.Post))

使用此代碼,我無法控制,只要我知道設置表單的名稱。 我現在正在嘗試編寫一個javascript函數來提交表單,這可能不知道表單名稱嗎?

謝謝

您可以使用jquery提交表單:

<% using (Html.BeginForm(null, null, FormMethod.Post, new { id = "myForm"})) { %>

(最后一部分是針對htmlAttributes參數)

這樣做:

$("#myForm").submit();

並且不要忘記包含mvc附帶的jquery-1.2.6.js(或使用更高版本)。

如果你想在沒有命名表單的情況下使用jQuery,並且頁面上只有一個表單,你可以在頁面中添加這樣的鏈接:

<a href="#" class="submitForm">Submit</a>

然后添加這個jQuery,它將連接鏈接以提交每個表單:

$(document).ready(function () {
    $("a.submitForm").click(function () {
        $("form").submit();
    });
});

所以這是一種做到這一點的方式(就像我在我的網站上做的那樣),不需要你為表單命名 - 前提是你只有一個。 說,你可能想提交多個表格..

如果您在該頁面上只有一個表單,則可以使用以下命令訪問該表單:

document.forms[0].

所以你可以添加一個鏈接:

<a href="javascript:document.forms[0].submit()">submit form</a>

這個簡單的解決方案提交Ajax表單而無需回發

<a href="#" onclick="$('#sbmt').trigger('click'); return false">Generate</a>
<input id="sbmt" type="submit" style="visibility: hidden" />

適用於IE和Firefox。

如果需要設置表單的名稱,請使用BeginForm方法的object htmlAttributes參數。

<% using 
  (Html.BeginForm(null, null, FormMethod.Post,
     new {name="MySuperForm"})) %>

要通過javascript提交表單,請查看此帖子 可能有用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM