Tôi đang viết đơn đăng ký với asp.net mvc. Tôi có bộ điều khiển với hành động, sử dụng một số ViewModel làm tham số. Cách gửi dữ liệu biểu mẫu với bài đăng jquery tới bộ điều khiển mvc đó.Làm thế nào để gửi dữ liệu trong jquery.post tới bộ điều khiển mvc sử dụng tham số ViewModel?
Trả lời
$.post("Yourcontroller/YourAction", { FirstName : $("#txtFirstName").val(), LastName : $("#txtLastName") } ,function(data){
//do whatever with the response
});
bạn tên ViewModel tài sản và Parameter chúng tôi đang đi qua nên giống nhau. Ví dụ: mô hình quan điểm của bạn nên có 2 thuộc tính gọi là FirstName
và LastName
như mình
public class PersonViewModel
{
public string FirstName { set;get;}
public string LastName { set;get;}
// other properties
}
Và phương pháp action Gửi nên chấp nhận một tham số kiểu PersonViewModel
[HttpPost]
public ActionResult YourAction(PersonViewModel model)
{
//Now check model.FirstName
}
Ngoài ra, Nếu xem bạn đang gõ mạnh lên PersonViewModel, bạn có thể chỉ cần gửi biểu mẫu được tuần tự hóa đến phương thức hành động bằng cách sử dụng phương thức jQuery serialize
$.post("Yourcontroller/YourAction", $("#formId").serialize() ,function(data){
//do whatever with the response
});
CHỈNH SỬA: Theo nhận xét
Serialize
cũng sẽ quản lý thuộc tính con. Giả sử bạn có một lớp gọi là nghề như thế này
public class Profession
{
public string ProfessionName { set; get; }
}
Và PersonViewModel của bạn có một loại tài sản của Profession
public class PersonViewModel
{
//other properties
public Profession Profession { set; get; }
public PersonViewModel()
{
if (Profession == null)
Profession = new Profession();
}
}
Bạn sẽ nhận được những dữ liệu này trong bạn HttpPost phương pháp hành động, nếu bạn điền vào đó khỏi tầm nhìn của bạn .
var myData = {
Parameter1: $("#someElementId").val(),
Parameter2: $("#anotherElementId").val(),
ListParameter: { /* Define IEnumerable collections as json array as well */}
// more params here
}
$.ajax({
url: 'someUrl',
type: 'POST',
dataType: "json",
contentType: 'application/json',
data: JSON.stringify(myData)
});
[HttpPost]
public JsonResult Create(CustomViewModel vm)
{
// You can access your ViewModel like a non-ajax call here.
var passedValue = vm.Parameter1;
}
Bạn cũng có thể tuần tự hóa toàn bộ biểu mẫu và chuyển nó sang phương thức hành động của bộ điều khiển. Trong bạn ajax gọi:
data: $('form').serialize()
Tuyệt vời !!! Tôi không biết rằng nó sẽ hoạt động. Cảm ơn. Tôi sẽ kiểm tra và uswer cho bạn. – Radislav
- 1. chuyển dữ liệu JSON tới bộ điều khiển Spring MVC
- 2. Gửi nhiều mục tới bộ điều khiển MVC qua jQuery.Ajax
- 3. Làm cách nào để sử dụng Tham số tùy chọn trong Bộ điều khiển ASP.NET MVC
- 4. Gửi mảng tới bộ điều khiển MVC qua JSON?
- 5. Làm thế nào để sử dụng Custom AuthorizeAttribute cho bộ điều khiển sử dụng giá trị tham số?
- 6. ASP.NET MVC - Qua JSON DateTime để điều khiển không ánh xạ tới tham số điều khiển
- 7. jQuery.post() - Rắc rối gửi bài dữ liệu
- 8. gửi tham số từ bộ điều khiển để xem
- 9. Làm cách nào để lấy dữ liệu từ bộ điều khiển ASP.NET MVC đến jQuery động?
- 10. Làm thế nào để vượt qua toàn bộ một ViewModel trở lại với bộ điều khiển
- 11. Truyền một mảng int tới Bộ điều khiển MVC
- 12. Đăng mảng dưới dạng JSON tới Bộ điều khiển MVC
- 13. Đường ray: Trường ẩn trong form_for không gửi tham số tới bộ điều khiển
- 14. ASP.NET MVC Truyền Dữ liệu từ Xem tới Bộ điều khiển
- 15. Làm thế nào để sử dụng UISearchDisplayController từ bộ điều khiển trong bộ điều khiển UITabBar?
- 16. Gửi dữ liệu với jquery để một bộ điều khiển MVC
- 17. Làm thế nào để sử dụng hộp tin nhắn trong bộ điều khiển MVC?
- 18. cách sử dụng trình kích hoạt trong Jquery để chuyển dữ liệu tham số cũng như điều khiển (điều này)
- 19. Tôi làm cách nào để gửi tham số tới bộ lọc trước?
- 20. Tham số phương thức bộ điều khiển MVC của Spring hoạt động như thế nào?
- 21. Làm cách nào để truyền một bit dữ liệu tùy ý tới điều khiển người dùng trong ASP.NET MVC bằng cách sử dụng Html.RenderPartial()?
- 22. ASP.NET MVC: Cách gửi email html bằng bộ điều khiển?
- 23. Gửi dữ liệu bổ sung tới lưới Telerik MVC
- 24. Làm thế nào để tận dụng tính năng "điều hướng đến bộ điều khiển" của Resharper
- 25. Dao cạo MVC 3 của ASP.NET: Chuyển dữ liệu từ chế độ xem tới bộ điều khiển
- 26. Làm thế nào để gọi hành động trong một số bộ điều khiển khác trong Mojolicious?
- 27. MVVM Xem tham chiếu tới ViewModel
- 28. Gửi dữ liệu POST từ bộ điều khiển đến một trang web khác trong Rails
- 29. Mẫu động MVC 3 Sử dụng ViewModel
- 30. MVC 4 cách truyền dữ liệu chính xác từ bộ điều khiển để xem
Điều gì sẽ xảy ra nếu mô hình của tôi chứa một số dạng xemModel làm thuộc tính? Ví dụ Người có tài sản Nghề nghiệp với các tài sản khác? – Radislav
@Radislav: Đúng vậy. Kiểm tra câu trả lời cập nhật của tôi. – Shyju
Exelent !!! Cảm ơn rất nhiều!!!! – Radislav