MVC.Net中的Action方法不是由jquery调用的

时间:2015-02-16 11:38:27

标签: c# jquery asp.net asp.net-mvc

您好我正在尝试使用jquery调用Action方法,但它没有返回任何值,尽管它已经返回成功标签中。 jquery的代码如下:

<input type="submit" id="btnsubmit" name="btnsubmit" value="Test" />

 $("#btnsubmit").click(function () {
        $.ajax({
            url: "/Account/GetDateTimeString",
            datatype: "text",
            type: "POST",
            success: function (data) {
                alert(data);
                $("#pdata").html(data);
            },
            error: function () {
                $("#pdata").html("ERROR");
            }
        });
    });

以及我添加方法的aCcount控制器的代码如下

[HttpPost]
public string GetDateTimeString()
{
    return DateTime.Now.ToString();
}

它没有被称为断点没有被击中。

2 个答案:

答案 0 :(得分:0)

阻止使用此代码提交表单

$("#btnsubmit").click(function (ev) {
        //prevent form from submit
        ev.preventDefault();
        // Not process ajax request
        $.ajax({
            url: "/Account/GetDateTimeString",
            datatype: "text",
            type: "POST",
            success: function (data) {
                alert(data);
                $("#pdata").html(data);
            },
            error: function () {
                $("#pdata").html("ERROR");
            }
        });
    });

阅读评论,@ DhavalMarthak已经有了这个。

答案 1 :(得分:0)

function ExecuteAjax(URL,data,sucess) {
$.ajax({
    url: URL,
    type: "post",
    dataType: "json",
    data: data,
    }).done(function (data) {
        if (sucess != null && typeof sucess === "function")
            sucess(data);
    });
}

 (function () {
 ExecuteAjax("/Home/MultipleJoin", null, function (data) {
     $("#grid tr.rowtr").remove();
     fillGrid(data);
 });
})();

确保拼写正确并且js引用和type = button