亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在asp.net mvc中對控制器進行簡單的Ajax調用

在asp.net mvc中對控制器進行簡單的Ajax調用

在asp.net mvc中對控制器進行簡單的Ajax調用我正在嘗試開始使用ASP.NET MVC Ajax調用??刂破鳎簆ublic class AjaxTestController : Controller{     //     // GET: /AjaxTest/     public ActionResult Index()     {         return View();     }     public ActionResult FirstAjax()     {         return Json("chamara", JsonRequestBehavior.AllowGet);     }   }視圖:<head runat="server">     <title>FirstAjax</title>     <script src="http://code.jquery.com/jquery-1.9.1.js"></script>     <script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>     <script type="text/javascript">         $(document).ready(function () {             var serviceURL = '/AjaxTest/FirstAjax';             $.ajax({                 type: "POST",                 url: serviceURL,                 data: param = "",                 contentType: "application/json; charset=utf-8",                 dataType: "json",                 success: successFunc,                 error: errorFunc            });             function successFunc(data, status) {                      alert(data);             }             function errorFunc() {                 alert('error');             }         });     </script></head>我只需要使用控制器方法返回數據來打印警報。上面的代碼只是在我的視圖上打印“chamara”。警報未觸發。UPDATE我修改了我的控制器如下,它開始工作。我不清楚它為什么現在正在工作。有人請解釋一下。參數“a”沒有關聯我添加它因為我不能添加兩個方法具有相同的方法名稱和參數。我認為這可能不是解決方案,但它的工作public class AjaxTestController : Controller     {         //         // GET: /AjaxTest/         [HttpGet]         public ActionResult FirstAjax()         {             return View();         }         [HttpPost]         public ActionResult FirstAjax(string a)         {             return Json("chamara", JsonRequestBehavior.AllowGet);         }     }
查看完整描述

3 回答

?
飲歌長嘯

TA貢獻1951條經驗 獲得超3個贊

完成更新后,

  1. 它首先使用默認的HttpGet請求調用FirstAjax操作并呈現空白的Html視圖。(早先你沒有)

  2. 稍后加載該視圖的DOM元素時,您的Ajax調用將被觸發并顯示警報。

之前您只是將JSON返回給瀏覽器而不呈現任何HTML?,F在它呈現了一個HTML視圖,它可以獲取您的JSON數據。

您不能直接呈現JSON的普通數據而不是HTML。


查看完整回答
反對 回復 2019-07-26
?
qq_遁去的一_1

TA貢獻1725條經驗 獲得超8個贊

刪除數據屬性,因為您不是POSTING服務器的任何內容(您的控制器不期望任何參數)。

在您的AJAX方法中,您可以使用Razor和使用@Url.Action而不是靜態字符串:

$.ajax({
    url: '@Url.Action("FirstAjax", "AjaxTest")',
    contentType: "application/json; charset=utf-8",
    dataType: "json",
    success: successFunc,
    error: errorFunc});

從您的更新:

$.ajax({
    type: "POST",
    url: '@Url.Action("FirstAjax", "AjaxTest")',
    contentType: "application/json; charset=utf-8",
    data: { a: "testing" },
    dataType: "json",
    success: function() { alert('Success'); },
    error: errorFunc});


查看完整回答
反對 回復 2019-07-26
?
白板的微信

TA貢獻1883條經驗 獲得超3個贊

使用Razor通過調用您的操作動態更改您的URL:

$.ajax({
    type: "POST",
    url: '@Url.Action("ActionName", "ControllerName")',
    contentType: "application/json; charset=utf-8",
    data: { data: "yourdata" },
    dataType: "json",
    success: function(recData) { alert('Success'); },
    error: function() { alert('A error'); }});


查看完整回答
反對 回復 2019-07-26
  • 3 回答
  • 0 關注
  • 1440 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號