RedirectToActionを呼び出してもページは更新されません

カルロス・リウ

見るIリンクボタンがあり、ビューから収集情報へのJavaスクリプトがあり、その後、対応するアクション「に投稿GroupDeny

@Html.ActionLink("Deny Selected", "GroupDeny", null, new { @class = "denySelectedLink" })

    @section Scripts {
      @Scripts.Render("~/bundles/jqueryval")

      <script type="text/javascript">

        $(document).on('click', '.denySelectedLink', function (e) {
          //Cancel original submission
          e.preventDefault();

          var identifiers = new Array();

          //build the identifiers . . .

          var jsonArg = JSON.stringify(identifiers);
          $.post('/LicenseAssignment/GroupDeny?licensePermissionIdentifiers=' + encodeURIComponent(jsonArg));
        });        

      </script>

次に、コントローラーで、GroupDenyがDBを更新してから、ビューを更新するためにRedirecToAction呼び出します。

public class LicenseAssignmentController : Controller
{
    [HttpPost]
    public ActionResult GroupDeny(string licensePermissionIdentifiers)
    {
       // changes the DB

       return RedirectToAction("Index");
    }

  // GET: 
  public async Task<ActionResult> Index()
  {
    var model = get data from DB

    return View(model);
  }

すべてが期待どおりに機能しているようです。RedirectToAction( "Index")が実行された後にインデックスが呼び出され、デバッグ中にモデルを見るとモデルが更新されます。唯一の問題は、ページがまったく更新されないことです。つまり、ビューは変更されませんが、ページを手動で更新した後(F5キーを押す)、データはDBからの値で更新されます。

ページから移動したくない場合は、AJAXを使用します。あなた$.post()はAJAXリクエストです。

ナビゲーションが必要なので、ページにフォームを追加します

@using(Html.BeginForm("GroupDeny", "LicenseAssignment", FormMethod.Post))
{
    <input type="hidden" value=""
        name="licensePermissionIdentifiers"
        id="licensePermissionIdentifiers" />
}

このフォームを送信すると、ナビゲートされます

$(document).on('click', '.denySelectedLink', function (e) {
    e.preventDefault();  // prevent link navigation

    var identifiers = new Array();

    //build the identifiers . . 

    // populate the form values
    $("#licensePermissionIdentifiers").val(identifiers);

    $("form").submit();
});

RedirectToAction()ブラウザaに戻り302 RedirectするにはLicenseAssignment/Index、あなたはindexアクションを打ちます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ページを呼び出しますが、何も表示されません

分類Dev

ロールが更新されても、関数呼び出しon_guild_role_updateは呼び出されません

分類Dev

RealmRecyclerViewAdapterでupdateDataを呼び出しても、実際にはデータが更新されていません

分類Dev

setCompoundDrawables()を呼び出しても、CompoundDrawableは表示されません。

分類Dev

ページを更新しても、最近のJavaScriptは更新されません

分類Dev

ストアドプロシージャは呼び出されても行を削除しません

分類Dev

ejsページをレンダリングするres.render()関数はUIを更新しませんが、ejsページは呼び出されます

分類Dev

ページにIFRAMEが含まれている場合、AndroidQueryajaxはphpページを呼び出しません

分類Dev

onClickが呼び出された後、jsを反応させてページを更新します

分類Dev

Cinnamon javascriptデスクレットは、Webページを呼び出すときに更新されません

分類Dev

setProgress(0、0、true)を呼び出しても、> API19の通知は更新されません

分類Dev

フラグメントを更新しても、onCreate()は呼び出されません。正常ですか?

分類Dev

小道具を更新してもcomponentWillReceivePropsメソッドは呼び出されません

分類Dev

nimからfzfを呼び出しても、fzfsTUIは表示されません

分類Dev

RelayCommand <enum>でRaiseCanExecuteChanged()を実行しても、CanExecute()は呼び出されません。

分類Dev

NodeJSとMongoose-CRUDモジュールのコードを削除しても呼び出されません

分類Dev

ディレクティブからコントローラー関数を呼び出してもスコープは更新されません

分類Dev

Angular 6:Subscribeメソッドが呼び出されてもビューは更新されません

分類Dev

メインスレッドでリロードが呼び出されてもUITableは更新されません

分類Dev

v-bind:style内から関数を呼び出しても、ビューの更新はトリガーされません

分類Dev

反応テストレンダラーでpropコールバックを呼び出してもフックは更新されません

分類Dev

Http.postを呼び出しても、Angular6の投稿はトリガーされません

分類Dev

NginxのAngularからAPIを呼び出しても、Dockerサービス名は解決されません

分類Dev

Maya:ノードを削除してもデストラクタは直接呼び出されません

分類Dev

Maya:ノードを削除してもデストラクタは直接呼び出されません

分類Dev

メソッドが呼び出されても、WCFサービスはHTTP応答を送信しません

分類Dev

別のストアドプロシージャからストアドプロシージャを呼び出しても、結果は生成されません

分類Dev

式を使用してスコープで関数を呼び出しても、何も返されません

分類Dev

式を使用してスコープで関数を呼び出しても、何も返されません

Related 関連記事

  1. 1

    ページを呼び出しますが、何も表示されません

  2. 2

    ロールが更新されても、関数呼び出しon_guild_role_updateは呼び出されません

  3. 3

    RealmRecyclerViewAdapterでupdateDataを呼び出しても、実際にはデータが更新されていません

  4. 4

    setCompoundDrawables()を呼び出しても、CompoundDrawableは表示されません。

  5. 5

    ページを更新しても、最近のJavaScriptは更新されません

  6. 6

    ストアドプロシージャは呼び出されても行を削除しません

  7. 7

    ejsページをレンダリングするres.render()関数はUIを更新しませんが、ejsページは呼び出されます

  8. 8

    ページにIFRAMEが含まれている場合、AndroidQueryajaxはphpページを呼び出しません

  9. 9

    onClickが呼び出された後、jsを反応させてページを更新します

  10. 10

    Cinnamon javascriptデスクレットは、Webページを呼び出すときに更新されません

  11. 11

    setProgress(0、0、true)を呼び出しても、> API19の通知は更新されません

  12. 12

    フラグメントを更新しても、onCreate()は呼び出されません。正常ですか?

  13. 13

    小道具を更新してもcomponentWillReceivePropsメソッドは呼び出されません

  14. 14

    nimからfzfを呼び出しても、fzfsTUIは表示されません

  15. 15

    RelayCommand <enum>でRaiseCanExecuteChanged()を実行しても、CanExecute()は呼び出されません。

  16. 16

    NodeJSとMongoose-CRUDモジュールのコードを削除しても呼び出されません

  17. 17

    ディレクティブからコントローラー関数を呼び出してもスコープは更新されません

  18. 18

    Angular 6:Subscribeメソッドが呼び出されてもビューは更新されません

  19. 19

    メインスレッドでリロードが呼び出されてもUITableは更新されません

  20. 20

    v-bind:style内から関数を呼び出しても、ビューの更新はトリガーされません

  21. 21

    反応テストレンダラーでpropコールバックを呼び出してもフックは更新されません

  22. 22

    Http.postを呼び出しても、Angular6の投稿はトリガーされません

  23. 23

    NginxのAngularからAPIを呼び出しても、Dockerサービス名は解決されません

  24. 24

    Maya:ノードを削除してもデストラクタは直接呼び出されません

  25. 25

    Maya:ノードを削除してもデストラクタは直接呼び出されません

  26. 26

    メソッドが呼び出されても、WCFサービスはHTTP応答を送信しません

  27. 27

    別のストアドプロシージャからストアドプロシージャを呼び出しても、結果は生成されません

  28. 28

    式を使用してスコープで関数を呼び出しても、何も返されません

  29. 29

    式を使用してスコープで関数を呼び出しても、何も返されません

ホットタグ

アーカイブ