簡體   English   中英

如何在MVC Controller C#中執行jQuery

[英]How to execute jQuery in MVC Controller C#

是否可以從MVC C#控制器運行jQuery?

if (ModelState.IsValid){
 //lots of C# asp.net code here

 jqueryFunctionName();

}

在jQuery運行之前進行某種檢查很重要

也許我可以直接從jQuery本身執行此操作,但是我不確定如何檢查它?

這個想法是表單->提交->某項檢查是否有效->是,然后等待圖形-> 2秒紗布->重定向到“ thanks.cshtml”

在控制器的操作中:

var vm = new YourViewModelTypeWithPropertyIsValid();
vm.IsValid = ModelState.IsValid;
return View(vm);

您認為:

@model YourViewModelTypeWithPropertyIsValid

<script type="text/javascript">

    var isModelValid = @Model.IsValid ? 'true' : 'false';
    $( document ).ready(function() {
        // Any JS code here
        // ...

        if (isModelValid) {
            setTimeout(
                function () {
                    location.assign('/redirect_path_after_2s_delay');
                },
                2000);
            );
        }
    });
<script>

我更喜歡鍵入視圖。

如果您使用無類型的視圖,請使用下面的代碼。

在控制器的操作中:

ViewData["IsModelValid"] = ModelState.IsValid ? "true" : "false";
return View();

您認為:

<script type="text/javascript">
    var isModelValid = @ViewData["IsModelValid"];
    $( document ).ready(function() {
        // Any JS code here
        // ...

        if (isModelValid) {
            // See the code above.
        }
    });
<script>

如果代碼在視圖中運行,那么您可以嘗試這樣的操作。 是一個特殊的asp標簽。 如果確實應在控制器中運行,則無法在其中運行JS代碼。

if (ModelState.IsValid){
 //lots of C# asp.net code here

 <text>
  <script>
  jqueryFunctionName();
  </script>
 </text>
}

暫無
暫無

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

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