簡體   English   中英

如何在不重定向或重新加載頁面的情況下更新字段/發布表單?

[英]How can i update a field / post a form without redirecting or reloading a page?

我有以下代碼來更新我的數據庫中的一個字段,該字段稱為Flag ,它是一個 Boolean 字段。 如何在不重新加載頁面和重定向的情況下更新flag字段。 我厭倦了 ajax/Jquery 但它第一次工作然后在更新<li>列表中的下一個項目時停止,在下一個列表上單擊它在地址欄中顯示 ID 和標志值但不更新記錄僅在更新第一個時有效列表中的項目。

 <form id="updateflag">
         @if (item.Flag == "Off")
           {
            <input name="ID" type="hidden" value="@item.ID" />  //value changes based on the selected list item
            <input name="Flag" type="hidden" value="true" />//value changes based on the selected list item
            <button type="submit" class="btn btn-primary">&nbsp; @(Localizer["Turn Flag On"]) // value changes based on the selected list item</button>
            }
           @if (item.Flag == "On")
             {
              <input name="ID" type="hidden" value="@item.ID" />//value changes based on the selected list item
              <input name="Flag" type="hidden" value="false" />//value changes based on the selected list item
              <button type="submit" class="btn btn-primary">&nbsp; @(Localizer["Turn Flag Off"])</button>//value changes based on the selected list item
             }
  </form>

//上面的表單ID字段變化

我使用了以下 Ajax/Jquery,它工作了一次,然后在下一次嘗試中顯示了 url 中的發布數據,但沒有更新該字段

$('#updateflag').submit(function (e) {
    e.preventDefault();
    let Data = $(this).serialize();

    $.post({
        type: 'POST',
        url: "/Customer/updateFlag",
        data: Data,
        success: window.location.reload()
    })
})

在不重定向的情況下單擊按鈕更新字段值並立即顯示更新結果的最佳方法是什么?

根據你的jquery代碼,我發現你只是為updateflag綁定了點擊事件。

如果您有多個表單,那么 Jquery 單擊綁定將僅適用於第一個表單。

您可以嘗試為所有 forms 設置 class 並在 jquery 中使用 class 選擇器,如下所示: <form id="updateflag" class="update"> , jquery: $('.update').submit

暫無
暫無

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

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