Tôi đang cố bắt đầu với các cuộc gọi ASP.NET MVC Ajax.Thực hiện cuộc gọi Ajax đơn giản tới bộ điều khiển trong asp.net mvc
Bộ điều khiển:
public class AjaxTestController : Controller
{
//
// GET: /AjaxTest/
public ActionResult Index()
{
return View();
}
public ActionResult FirstAjax()
{
return Json("chamara", JsonRequestBehavior.AllowGet);
}
}
Xem:
<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>
Tôi chỉ cần in một cảnh báo với các phương pháp điều khiển trở về dữ liệu. Trên mã chỉ in "chamara" trên quan điểm của tôi. Cảnh báo không kích hoạt.
CẬP NHẬT
tôi sửa đổi điều khiển của tôi như dưới đây và nó bắt đầu làm việc. Tôi không có ý tưởng rõ ràng tại sao nó hoạt động ngay bây giờ. Một số xin vui lòng giải thích. Tham số "a" không liên quan đến tôi thêm nó, vì tôi không thể thêm hai phương pháp với tên cùng một phương pháp và parameters.I nghĩ rằng đây có thể không phải là giải pháp nhưng làm việc của nó
public class AjaxTestController : Controller
{
//
// GET: /AjaxTest/
[HttpGet]
public ActionResult FirstAjax()
{
return View();
}
[HttpPost]
public ActionResult FirstAjax(string a)
{
return Json("chamara", JsonRequestBehavior.AllowGet);
}
}
trả về chuỗi có định dạng json '{" name ":" chamara "}'. sau đó thử đọc dưới dạng 'data ['name']' – Rab
Xóa thư viện jQuery thứ hai khỏi khung nhìn. Mã của bạn sẽ hoạt động như cũ. Tôi nghĩ rằng một lỗi tập lệnh có thể xảy ra và ngăn cảnh báo hiển thị. – Terence