asp.net-mvc - 这是 jquery ajax 调用 aspnet mvc Controller 的有效数据吗?

标签 asp.net-mvc jquery controller jsonresult

我正在使用 jquery 和 asp.net mvc...我的数据选项是否有效,或者我是否遗漏了一些东西...

$.ajax({
            type:"POST",
            url: "Materials/GetRecords",
            data: "{'currentPage':1,'pageSize':5}",

任何建议......

编辑: 我正在从 View 页面调用函数,

 <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
    <script type="text/javascript">
        $(document).ready(function() {
            getMaterials(0);
          });
    </script>

我的功能是,

function getMaterials(currentPage) {
    $.ajax({
        type:"POST",
        url: "Materials/GetRecords",
        data: "{'currentPage':" + (currentPage + 1) + ",'pageSize':5}",
        contentType: "application/json; charset=utf-8",
        cache: false,
        global: false,
        async: false,
        dataType: "json",
        success: function(data) {
            var divs = '';
            $("#ResultsDiv").empty();
            $.each(data.Results, function() {
                divs += '<div class="resultsdiv"><br /><span style="display: inline-block;width:150px;" class="resultName">' + this.Mat_Name + '</span><span class="resultfields" style="padding-left:10px;">Measurement&nbsp;:</span>&nbsp;<span class="resultfieldvalues">' + this.Mes_Name + '</span>&nbsp;<a href="/Materials/Delete/' + this.Id + '">Delete</a>&nbsp;<a href="/Materials/Details/' + this.Id + '">Details</a>&nbsp;<a href="/Materials/Edit/' + this.Id + '">Edit</a></div>';
            });
            alert("hai");
            $("#ResultsDiv").append(divs);
            $(".resultsdiv:even").addClass("resultseven");
            $(".resultsdiv").hover(function() {
                $(this).addClass("resultshover");
            }, function() {
                $(this).removeClass("resultshover");
            });
            $("#HfId").val("");
            $("#HfId").val(data.Count);
        }
    });
    return false;
}

在加载 View 页面时,我看到一条警告,内容为[Object object]..为什么会这样...

最佳答案

现在,您的数据是一个字符串。您可能希望它是一个对象,如下所示:

$.ajax({
        type:"POST",
        url: "Materials/GetRecords",
        data: {"currentPage": (currentPage + 1), "pageSize": 5},
        contentType: "application/json; charset=utf-8",
        cache: false,
        global: false,
        async: false,
        dataType: "json",
        success: function(data) {
            var divs = '';
            $("#ResultsDiv").empty();
            $.each(data.Results, function() {
                divs += '<div class="resultsdiv"><br /><span style="display: inline-block;width:150px;" class="resultName">' + this.Mat_Name + '</span><span class="resultfields" style="padding-left:10px;">Measurement&nbsp;:</span>&nbsp;<span class="resultfieldvalues">' + this.Mes_Name + '</span>&nbsp;<a href="/Materials/Delete/' + this.Id + '">Delete</a>&nbsp;<a href="/Materials/Details/' + this.Id + '">Details</a>&nbsp;<a href="/Materials/Edit/' + this.Id + '">Edit</a></div>';
            });
            alert("hai");
            $("#ResultsDiv").append(divs);
            $(".resultsdiv:even").addClass("resultseven");
            $(".resultsdiv").hover(function() {
                $(this).addClass("resultshover");
            }, function() {
                $(this).removeClass("resultshover");
            });
            $("#HfId").val("");
            $("#HfId").val(data.Count);
        }
    });

您获取 JavaScript 对象([Object 对象])是正常的。您用它做什么取决于您的应用程序。然而,你是对的,没有警报(除了海),所以我不知道它来自哪里。尝试清除浏览器缓存。

关于asp.net-mvc - 这是 jquery ajax 调用 aspnet mvc Controller 的有效数据吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2770726/

相关文章:

c# - 获取 Action 名称作为属性参数的字符串

jquery - 在 JQuery 中获取本地化语言

javascript - Math.random() 帮助获得 '+N' 和 '-N' 随机数(不包括特定范围)

javascript - Controller ---工厂: passing parameters

ruby-on-rails - 在 Controller 中调用模型自定义方法

php - 使用 Controller 通过 codeigniter 处理返回的自定义 css 和 javascript 文件

c# - 根据客户端接收不同的响应

asp.net - 看起来日期的 Binder 在 asp.net mvc 中不正确

c# - 没有可用的匹配绑定(bind),并且该类型不可自绑定(bind)。激活 IProductsRepository 时出错

javascript - Chosen 使用 jQuery 默认选择一个选项