Я хочу вызвать метод действия (AddCompare), используя Ajax-запрос в представлении,
Моя проблема заключается в том, что параметр, отправляемый в действие AddCompare, всегда имеет нулевое значение, тогда как значение параметра в функции AddToCompareправильно
это мой код
Вид:
@model IEnumerable<Products>
@foreach (var item in Model)
{
<li>
<div class="left-block">
<div class="quick-view">
<a title="Add To Compare" class="heart" href="#" onclick="AddToCompare(15)"></a>
</div>
</div>
</li>
}
<script>
function AddToCompare(param) {
alert(param); //display correct value 15
$.ajax({
type: "GET",
url: "@Url.Action("AddCompare")",
contentType: "application/json; charset=utf-8",
dataType: "json",
data: JSON.stringify({
id: param
}),
success: function (response) {
var myObject = eval('(' + response.d + ')');
if (myObject > 0) {
$(".errMsg").append("<ul><li>Data saved successfully</li></ul>");
}
else {
$(".errMsg").append("<ul><li>Opppps something went wrong.</li></ul>");
}
$(".errMsg").show("slow");
},
error: function (response) {
alert(response.status + ' ' + response.statusText);
}
});
}
</script>
Контроллер
public JsonResult AddCompare(int id)
{
//id is zero !!!
int param=id;
}
В чем проблема?