Как отправить переменные js в контроллер mvc
Я новичок в концепции программирования клиент-сервер. Что мне нужно, чтобы отправить четыре js vars для моего действия контроллера MVC 3.
$(document).ready(function() {
var $jcrop;
$('#image').Jcrop({
bgColor: 'red',
onSelect: refreshData
}, function () {
$jcrop = this;
});
function refreshData(selected) {
myData = {
x1: selected.x1,
x2: selected.x2,
y1: selected.y1,
y2: selected.y2
};
}
});
Так что я получаю свои переменные в браузере.
Что у меня есть на стороне сервера:
public ActionResult CreateCover(ImageCoordinates coordinates) {
ViewData.Model = coordinates;
return View();
}
public class ImageCoordinates
{
public int x1 { get; set; }
public int x2 { get; set; }
public int y1 { get; set; }
public int y2 { get; set; }
}
Есть ли простой способ опубликовать мои четыре параметра из js в моем действии? Я попытался использовать пару примеров с этого сайта, используя $ .ajax
Как это
$.ajax({
url: '/dashboard/createcover',
type: 'POST',
data: JSON.stringify(myData),
contentType: 'application/json; charset=utf-8',
success: function (data) {
alert(data.success);
},
error: function () {
alert("error");
},
async: false
});
Но это не сработало, я получил 0 0 0 0 в своем действии. Но, честно говоря, я даже не уверен, как вызвать эту функцию jquery. Должен ли я позвонить по ней, нажав кнопку, или она автоматически позвонит, когда я отправлю форму? И есть ли другие способы отправки этого параметра?