当前位置: 首页 > 知识库问答 >
问题:

在ASP.NET MVC中未调用jQuery Ajax成功函数

东方高洁
2023-03-14

我有一个Bootstrap模态表单来检查IMO的存在,并且我正在使用jQuery Ajax Post来提交它。

null

$('#submitCheck').click(function() {
   $.ajax({
     type: "POST",
     url: "/Entry/Index",
     dataType: 'json',
     success: function(data) {
       alert("Check");
       if (data == 'true') {
         alert("RETURN TRUE");
         window.location.href = "/Entry/Create";
       } else {
         alert("RETURN FALSE");
         $('#divStat').html("IMO does not exist");
       }

     },
     error: function() {
       alert("Something went wrong");
     }
   });
 })

null

这里是控制器:

null

[HttpPost]
public ActionResult Index(string IMO) {
  var data = db.Ships.Where(d => d.IMO.Equals(IMO)).FirstOrDefault();
  if (data != null)
    return Json(true);
  return Json(false);
}

null

当我提交表单时,IMO被选中,并且我看到结果在视图中为“true”(或“false”),但是在jQuery代码中,没有调用success函数,所以我看不到“alert”或其他任何东西。我做错了什么?

共有1个答案

夏侯俊美
2023-03-14

您试图检查字符串“true”还是布尔值true?如果删除引号,则该值应为true。
此外,您可能希望执行以下操作:
返回Json(new{success=true},JSONRequestBehavior.AllowGet);以便执行以下操作:

success: function (data) {
            //or if(data.success) which evaluates to true.
            if (data.success == true) {
                alert("RETURN TRUE");
            }
 类似资料:
  • 问题内容: 我有一个JavaScript Ajax调用(jQuery.ajax),它不执行成功回调函数。 我在firebug中看到,该请求已发布,并且按预期返回了有关json的正确结果。怎么了? 问题答案: 很多次,我都遇到过类似的问题,大多数时候,原因是json格式错误。尝试以文本数据类型获取结果,看看这是否是您的问题。 另外,我想问一下您是否使用了“&jsoncallback =?”之类的参数

  • 如何在jQuery AJAX中更改成功块中freemarker变量的值,我的页面有两个控制器第一个控制器使用GET方法返回一个带有视图名称的简单字符串,第二个控制器使用json和POST方法处理数据 给你 我的第二个控制器 我的Json方法 我的传呼myform.html 到目前为止,我的freemarker变量得到了我放在success块中的值,但在我按下submit按钮之前它显示为succes

  • 问题内容: 我正在尝试链接嵌套的.then函数并调用成功函数,但是回调是在开始本身中进行的。 基本上,我需要在所有服务调用成功时向其他控制器回调“200”响应状态,即使一个请求失败,我也需要发送“500”。我的代码“响应状态为200”正在使用第一个.then函数本身进行调用。我想将此服务电话称为que 任何帮助,将不胜感激。 问题答案: 您的对象仅出于流控制的目的而存在,可以自然地由; 返回的pr

  • 问题内容: 我有以下代码 现在,测试var应该像控制台那样将false设置为true。但是test var给了我不确定的原因? 问题答案: 可能是因为Validate.fail(test)在异步调用之后立即发生。请记住,它是异步的,这意味着它与页面上运行的javascript并行执行。

  • 在MainActivity中。java//web服务的根URL公共静态最终字符串Root\u URL=”http://pratikbutani.x10.mx“RestAdapter adapter=new RestAdapter.Builder().setEndpoint(ROOT\u URL.build()); 公共接口BooksAPI{ }

  • 问题内容: 我想使用jQuery ajax从服务器检索数据。 我想将成功回调函数定义放在如下所示的代码块之外。因此,是否需要像下面这样声明变量,以便能够使用成功回调中返回的数据? 我已经看到大多数人在块内定义成功回调。如果我想在外部定义成功回调,那么以下代码正确吗? 问题答案: 只需使用: 该属性仅需要引用一个函数,并将数据作为参数传递给该函数。 由于声明的方式,您可以像这样访问您的函数。Java