javascript - ajax 调用返回未定义类型的数据

标签 javascript jquery ajax asp.net-mvc-4 actionresult

我有一个 jquery 脚本,它在 MVC 应用程序的 Controller 内对我的操作进行 ajax 调用:

$('#save').click(function () {
    $.post(url, { id: id, text: textarea.val() }, function (data) {
        if (data) {
            row.children('td').eq(3).text(textarea.val());
            row.children('td').eq(4).text('Da');
            row.children('td').eq(5).hide();
            $('#napomena').val('');
            form.hide();
        }
    });
});

这是我的 Controller :

  public ActionResult PravdanjeIzostanaka(string id, string text)
        {
            var obj = db.Odsutnost.Find(Convert.ToInt32(id));
            if(obj!=null && text.Trim()!="")
            {
                obj.Napomena = text;
                obj.Opravdano = true;
                db.SaveChanges();
                return RedirectToAction("PregledIzostanaka");
            }
            return null;  // what am I supposed to return here so that data type in ajax would be undefined??          
        }

正如你所看到的,我检查 obj 对象和文本字段是否为 !=null 以及是否为空。如果这两个要求没有得到满足,我想发出一点警报,基本上会说:“文本字段是必需的!”并将我的脚本修改为如下所示:

 if (data!=="undefined") {
            row.children('td').eq(3).text(textarea.val());
            row.children('td').eq(4).text('Da');
            row.children('td').eq(5).hide();
            $('#napomena').val('');
            form.hide();
        }
else{
alert('Text field is required!');
}

所以我需要修改我的脚本和操作(操作应该返回ajax将其视为未定义的内容,以便我可以发出警报)...

有人可以帮我解决这个问题吗? :)

最佳答案

仅返回一个未定义的 json 字符串。更像下面这样:

public ActionResult PravdanjeIzostanaka(string id, string text)
        {
            var obj = db.Odsutnost.Find(Convert.ToInt32(id));
            if(obj!=null && text.Trim()!="")
            {
                obj.Napomena = text;
                obj.Opravdano = true;
                db.SaveChanges();
                return RedirectToAction("PregledIzostanaka");
            }
            return json("undefined");           
        }

关于javascript - ajax 调用返回未定义类型的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35458521/

相关文章:

php - 如何使用jQuery和AJAX在表单提交后立即显示数据?

javascript - 如何计算localStorage中的总量和总计?

javascript - 轻松模拟 Restful 服务的工具

javascript - 在没有 JQuery 的 JavaScript 中,在 AJAX 请求中进行长轮询的最佳方法是什么?

javascript - 如何 Onload() 将焦点设置到 jQuery Handsontable

jquery - Ajax 聊天轮询带宽效率

javascript - browserify 检测自定义 require()

javascript - 为什么onmouseup的效果一直不生效?

javascript - 如何使用javascript允许一个特定的单词进入表单中的文本字段?

javascript - Jquery:如何发送一个 ajax 请求并为另一次调用保存 JSON 字符串