Просмотр:
<div class="row">
<div class="col-md-1">
@Html.LabelFor(model => model.DoingDateTime, new { @class = "control-label" })
</div>
<div class="col-md-3">
@if (TaskOwner == false && ActionName.ToLower() == "edit" )
{
@Html.TextBoxFor(model => model.DoingDateTime, new { @class = "form-control text-center", lang = "en", @readonly = "readonly" })// ,@onchange = "setdefaultmaturitydate();"
}
else
{
@Html.TextBoxFor(model => model.DoingDateTime, new { @class = "form-control text-center datepicker", lang = "en" })
}
</div>
<div class="col-md-2">
@Html.ValidationMessageFor(model => model.DoingDateTime)
</div>
<div class="col-md-1">
@Html.LabelFor(model => model.ReferencesTo, new { @class = "control-label" })
</div>
<div class="col-md-3">
@if (TaskOwner == false && ActionName.ToLower() == "edit" )
{
@Html.TextBoxFor(model => model.CombinatorialReferenceToFullName, new { @class = "form-control", lang = "en", @readonly = "readonly" })
@Html.HiddenFor(model => model.Task_ReferenceTo)
}
else
{
if (ActionName.ToLower() == "create")
{
@Html.ListBoxFor(model => model.ReferencesTo, (MultiSelectList)(ViewData["ReferenceTolist"]), new { @class = "form-control chosen-select" })
}
else
{
@Html.DropDownListFor(model => model.Task_ReferenceTo, (SelectList)(ViewData["ReferenceTolist"]), new { @class = "form-control chosen-select" })
}
}
</div>
<div class="col-md-2">
@Html.ValidationMessageFor(model => model.ReferencesTo)
</div>
</div>
Контроллер:
[AllowAnonymous]
public ActionResult UserVacationInDay(List<int> userIds, string vacationDate)
{
//Code...
if (vacations.Count() > 0)
{
message = "Test";
}
return Json(new { Message = message }, JsonRequestBehavior.AllowGet);
}
Ajax:
$("form").submit(function (e) {
var uids = $('#ReferencesTo').val();
var vDate = $("#DoingDateTime").text();
$.ajax({
url: '@Url.Action("UserVacationInDay", "Vacation")',
dataType: 'json',
data: {
userIds: uids,
vacationDate: vDate
},
type: 'post',
success: function (data) {
if (data.Message != "" && data.Message != null) {
alert(data.Message);
}
},
error: function (xhr) {
alert('Request Status: ' + xhr.status + ' Status Text: ' + xhr.statusText + ' ' + xhr.responseText);
}
});
});
Когда Ajax запускается, он сначала переходит в раздел ошибок, возвращаетошибка состояния: 0. Затем он переходит к контроллеру, но после возврата в AJAX секция Success не выполняется.
Когда поле даты не установлено пользователем в программе, AJAX работает правильнобез ошибок.Когда я вручную устанавливаю поле даты в ajax, оно снова работает без ошибок.
Как мне прочитать поле даты, чтобы избежать проблемы?