比較される変数に値があり、値があり、それが真であれば、プログラムは何もしませんが、句を読んでも、ちょうどジャンプ、私はブレークポイントでそれを見た。ASP.Net MVC句が無視されている場合
これは私のコントローラである:
public ActionResult Delete(int? id)
{
string result = null;
try
{
if (id == null)
{
result = HIQResources.errorMessageUnknownAction;
return new JsonResult { Data = result };
}
StudentViewModel vm = new StudentViewModel();
StudentDetail studentDetail = studentManager.GetStudentDetailById(id.Value);
if (studentDetail == null)
{
result = HIQResources.errorMessageUnknownRecord;
return new JsonResult { Data = result };
}
int deleteResult = studentManager.Delete(id.Value);
if (deleteResult == 1)
{
vm.Alert.SetSuccessMessage(HIQResources.messageOperationSuccess);
TempData["alert"] = vm.Alert;
result = HIQResources.messageOperationSuccess;
return new JsonResult { Data = result };
}
vm.Alert.SetErrorMessage(HIQResources.errorMessageUnableToExecuteOperation);
TempData["alert"] = vm.Alert;
result = HIQResources.errorMessageUnableToExecuteOperation;
return new JsonResult { Data = result };
}
catch (DbUpdateException ex)
{
Log.AddLogRecord(LogManager.LogType.Warning, LogManager.LogPriority.Low, LogManager.LogCategory.Teacher, ex.Message, ex.StackTrace, base.GetLoggedUser());
result = HIQResources.errorMessageUnableToDeleteRecord;
return new JsonResult { Data = result };
}
catch (Exception ex)
{
Log.AddLogRecord(LogManager.LogType.Error, LogManager.LogPriority.High, LogManager.LogCategory.Inscription, ex.Message, ex.StackTrace, base.GetLoggedUser());
result = HIQResources.errorMessageExceptionOccurred;
return new JsonResult { Data = result };
}
}
これは、すべてJavaScriptでこれらのメソッド呼び出しているボタンによってトリガーされている:正直に言うと
$(function() {
var id;
var button;
$(".btnDeleteArgs").on("click", function (e) {
e.preventDefault();
button = $(e.target);
id = button.attr('data-hiq-student-id');
});
$('#ModalDeleteButton').on("click", function (e) {
var token = $('input[name="__RequestVerificationToken"]').val();
$.post("/Student/Delete/",
{
__RequestVerificationToken: token,
id: id
},
function (data) {
$('#myModal .close').click();
var baseurl = '@Url.Action("Index")';
var url = baseurl + "?message=" + data;
window.location.href = url;
});
});
を、私は思いませんコントローラが問題を開始するのでJavascriptが問題になります。コントローラーはジャンプする 'if'節で実行されません。
'場合(deleteResult == 1)' =である必要があり、その場合には...私はを削除するプロファイルのIDでコメントで言いました> 'deleteResult'(と' studentDetail')の値は何ですか? 'deleteResult'が1と等しくないか、' studentDetail'がnullでない場合、条件はスキップされます。 –
これはコンパイルされないので、完全なコードにすることはできません。 * if文が機能していないか、変数の値が何であるかを教えてください。 – DavidG
主に 'deleteResult'は0または'> 1'です – Rahul