Tôi đã tạo một hàm trong javascript như thế:
function addNewManufacturer() {
var name = $("#id-manuf-name").val();
var address = $("#id-manuf-address").val();
var phone = $("#id-manuf-phone").val();
var sendInfo = {
Name: name,
Address: address,
Phone: phone
};
$.ajax({
type: "POST",
url: "/Home/Add",
dataType: "json",
success: function (msg) {
if (msg) {
alert("Somebody" + name + " was added in list !");
location.reload(true);
} else {
alert("Cannot add to list !");
}
},
data: sendInfo
});
}
Tôi đã gọi jquery.json-2.3.min.js
tập tin script và tôi đã sử dụng nó cho toJSON(array)
phương thức.
Trong bộ điều khiển, tôi có Add
hành động này
[HttpPost]
public ActionResult Add(PersonSheets sendInfo) {
bool success = _addSomethingInList.AddNewSomething( sendInfo );
return this.Json( new {
msg = success
});
}
Nhưng sendInfo
khi tham số phương thức trở thành null.
Ngươi mâu:
public struct PersonSheets
{
public int Id;
public string Name;
public string Address;
public string Phone;
}
public class PersonModel
{
private List<PersonSheets> _list;
public PersonModel() {
_list= GetFakeData();
}
public bool AddNewSomething(PersonSheets info) {
if ( (info as object) == null ) {
throw new ArgumentException( "Person list cannot be empty", "info" );
}
PersonSheets item= new PersonSheets();
item.Id = GetMaximumIdValueFromList( _list) + 1;
item.Name = info.Name;
item.Address = info.Address;
item.Phone = info.Phone;
_list.Add(item);
return true;
}
}
Làm thế nào tôi có thể làm trong phương thức hành động khi dữ liệu được gửi bằng POST?
Tôi không biết cách sử dụng. Ngoài ra, có thể gửi lại phản hồi (tới ajax) qua JSON không?