Я пытаюсь опубликовать строку (имя ссылки, по которой щелкнул пользователь), используя AJAX на моем контроллере MVC (который затем будет использоваться для фильтрации результатов моей таблицы в соответствии со строкой).
Хотя мне удалось заставить его публиковать (по крайней мере, в соответствии с предупреждениями) на стороне AJAX, он, кажется, не поступает должным образом на стороне контроллера, и в моем быстром захвате ошибок это выглядит как ноль (оператор if).
Пожалуйста, извините за бесполезные соглашения об именах на данный момент.Я пробовал множество методов, чтобы попытаться исправить это, поэтому назову правильное имя, когда у меня будет правильное решение:).
Я уже давно работаю над этим и могуКажется, не решить загадку, поэтому любая помощь приветствуется, пожалуйста!Я очень новичок в AJAX и MVC в целом, поэтому я надеюсь, что это небольшая ошибка.:) (К вашему сведению, я пробовал и отправлять, и получать, и оба, кажется, дают один и тот же результат?)
Контроллер:
[Authorize]
[HttpGet]
public ActionResult GetSafeItems(string yarp)
{
using (CBREntities2 dc = new CBREntities2())
{
if (yarp == null)
{
ViewBag.safeselected = yarp;
}
var safeItem = dc.Items.Where(a => a.Safe_ID == yarp).Select(s => new {
Serial_Number = s.Serial_Number,
Safe_ID = s.Safe_ID,
Date_of_Entry = s.Date_of_Entry,
Title_subject = s.Title_subject,
Document_Type = s.Document_Type,
Sender_of_Originator = s.Sender_of_Originator,
Reference_Number = s.Reference_Number,
Protective_Marking = s.Protective_Marking,
Number_recieved_produced = s.Number_recieved_produced,
copy_number = s.copy_number,
Status = s.Status,
Same_day_Loan = s.Same_day_Loan
}).ToList();
// var safeItems = dc.Items.Where(a => a.Safe_ID).Select(s => new { Safe_ID = s.Safe_ID, Department_ID = s.Department_ID, User_ID = s.User_ID }).ToList();
return Json(new { data = safeItem }, JsonRequestBehavior.AllowGet);
}
}
Функция AJAX (на странице просмотра):
$('.tablecontainer').on('click', 'a.safeLink', function (e) {
e.preventDefault();
var yarp = $(this).attr('safesel');
var selectedSafeZZ = JSON.stringify("SEC-1000");
$.ajax({
url: '/Home/GetSafeItems',
data: { 'yarp': JSON.stringify(yarp) },
type: "GET",
success: function (data) {
alert(yarp);
console.log("We WIN " + data)
},
error: function (xhr) {
alert("Boohooo");
}
});
})
** Оповещение показывает правильный тип: «SEC-1000», но в журнале консоли отображается: МЫ ВЫИГРЫВАЕМ [Объект объекта] ??