c# - MVC 中的 JQuery getJSON

标签 c# javascript jquery asp.net-mvc json

我有以下 JSon 调用,我想在 Controller 中调用一个方法并接受 JSon 对象来更新局部 View :

<script type="text/javascript">
    function DoAjaxUpdate(btnClicked) {
        btnClicked = $(btnClicked);
        var $form = btnClicked.parents('form');
        var url = '@Url.Action("Remove")';


        $.getJSON(
            url,
            $form.serialize(),
        function () {                
            if (data.htmlPartialView != null) {
                return $("#divPartialView").load(obj.htmlPartialView);
            }
        });

        return false;
    }
</script>

不幸的是,这没有正确传递数据,而是将其作为查询字符串附加到 URL,例如:http://www.myLink.com/MyController/Remove?dataID=1359&dataMember=1

请帮忙。谢谢

最佳答案

这就是 $("form").serialize() 发生的情况。它将序列化表单上的所有内容并将其放在查询字符串中。

只要您的 Remove 操作方法采用原始 View 中的模型实例,它就会使用查询字符串中的值进行转换。

要将其作为 JSON 发送,您必须使用 JSON.stringify() :

JSON.stringify($form.serialize())

关于c# - MVC 中的 JQuery getJSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16450846/

相关文章:

c# - 在default.aspx中调用jquery

javascript - 如何从 Google Maps v3 API 中删除带有 mysql 数据的标记?

javascript - 在 'for' 循环中使用 Jquery Promise() 等待效果完成后再开始下一个效果

jquery - 如何根据所选语言更改日期选择器语言?

javascript - 如何在 MVC 5 中用 "a"标签替换 ActionLink?

c# - 我们能得到已经打开的NSWindow的类名吗?

c# - 如何使用 SqlCommand 以参数化数据库名称创建数据库?

c# - 在 C# 中暂停/恢复上传

javascript - 如何使用 Javascript 调整 Iframe 的宽度?

javascript - 如何一一执行url请求而不导致堆栈溢出? ( Node .JS)