ajax调用asp mvc控制器

jpa*_*lov 0 asp.net ajax asp.net-mvc-4

嗨我正在尝试让我的ajax在点击"删除"按钮时调用我的控制器.图像预览被删除,但我的控制器上的断点从未命中.有人可以查看我的代码并删除小光.谢谢!

<script>
Dropzone.options.myDropzone = {
    init: function () {
        this.on("addedfile", function (file) {
            var removeButton = Dropzone.createElement("<button id='btnDel' class='btnRemove'>Remove file</button>");
            var _this = this;

            // Listen to the click event
            removeButton.addEventListener("click", function (e) {

                _this.removeFile(file);
                var delURL = "~/Home/DeleteFiles";

                $.ajax({
                    type: "POST",
                    url: delURL,
                    data: param = "",
                    contentType: "application/json; charset=utf-8",
                    dataType: "json",
                    success: alert("worked"),
                    error: errorFunc
                });
            });
            file.previewElement.appendChild(removeButton);
            $(".dz-error-message").remove();
        });
    }
};
Run Code Online (Sandbox Code Playgroud)

Dav*_*vid 5

此URL对您的浏览器没有任何意义:

~/Home/DeleteFiles
Run Code Online (Sandbox Code Playgroud)

~字符表示对应用程序的服务器端"home"或"root"路径的引用.但是客户端代码没有这个概念.它需要一个实际的URL.

如果在控制器DeleteFiles上调用正在调用的操作,Home则可以在呈现客户端代码时使用URL帮助程序生成URL:

var delURL = '@Url.Action("DeleteFiles", "Home")';
Run Code Online (Sandbox Code Playgroud)

这将使用视图中的服务器端代码生成客户端使用的实际URL,相对于服务器端已知的有关应用程序的任何其他内容.它将呈现如下:

var delURL = 'http://yourserver/Home/DeleteFiles';
Run Code Online (Sandbox Code Playgroud)