У меня есть тег изображения в моем MVC View, который я хочу отображать только тогда, когда логическое значение, возвращаемое из контроллера, равно true. Я написал функцию jquery, которая вызывается при загрузке изображения, которая в свою очередь вызывает метод контроллера и возвращает логическое значение. Однако функция jquery никогда не вызывается при загрузке изображения. Я очень плохо знаю Jquery и не уверен, правильно ли я это называю.
<div class="imageHolder">
<img id="icon" data-userId="@Model.Users[i].Id" src="~/Images/Icon.png" onclick="location.href='/UserDetails/GetUserID?userID=@Model.Users[i].Id'" />
</div>
Функция Jquery:
$("#icon").load(function () {
$.ajax({
type: "POST",
url:"UserDetails/CheckIfUserDataExists?userId=" + $('#icon').attr('data-userId'),
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (data) {
if (data == "true") {
$('#icon').show();
}
else {
$('#icon').hide();
}
},
});
}
Метод контроллера:
[HttpGet]
public ActionResult CheckIfUserDataExists(int userId)
{
if(userRepository.CheckIfUserHasData(userId))
{
return Json(true);
}
else
{
return Json(false);
}
}
Заранее спасибо,