相关疑难解决方法(0)

在MVC中使用Ajax.BeginForm上传文件

我试图使用这里提到的一个例子如何用multipart/form-data做一个ASP.NET MVC Ajax表单帖子?

但我一直收到"失败"错误消息框

Index.cshtml

<script src="~/Scripts/jquery-1.8.2.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<h2>Files Upload</h2>
<script type="text/javascript">
$(function() {
    $("#form0").submit(function(event) {
        var dataString;
        event.preventDefault();
        var action = $("#form0").attr("action");
        if ($("#form0").attr("enctype") == "multipart/form-data") {
            //this only works in some browsers.
            //purpose? to submit files over ajax. because screw iframes.
            //also, we need to call .get(0) on the jQuery element to turn it into a regular DOM element so that FormData can use it.
            dataString = new FormData($("#form0").get(0));
            contentType = false;
            processData = false;
        } …
Run Code Online (Sandbox Code Playgroud)

ajax asp.net-mvc jquery ajax.beginform asp.net-mvc-4

36
推荐指数
2
解决办法
9万
查看次数

如何利用异步XMLHttpRequest的回调函数?

我目前正在编写JavaScript并且对回调感到困惑.我发现它不是那种内置函数...
我现在正在阅读O'Relly JavaScript第5版,它显示的示例代码如下所示:

getText = function(url, callback) // How can I use this callback?
{
    var request = new XMLHttpRequest();
    request.onreadystatechange = function()
    {
        if (request.readyState == 4 && request.status == 200)
        {
            callback(request.responseText); // Another callback here
        }
    }
    request.open('GET', url);
    request.send();
}
Run Code Online (Sandbox Code Playgroud)

基本上,我想我不明白一般的想法callback......有人可以写一个示例代码来利用callback上述优势吗?

javascript asynchronous xmlhttprequest callback

23
推荐指数
2
解决办法
6万
查看次数

无法拆分文件并发送然后加入服务器

我正在使用ajax javascript从客户端上传文件,我在块中和服务器中分割,当收到所有块时我加入它们.但问题是即使原始文件和上传的文件大小相同但两者都不同.我的意思是gif文件,当我查看它与视频files.client侧代码不同和相同

    var xhr = new XMLHttpRequest();

    var tempBlob = blob;
    var blobOrFile = tempBlob.slice(fileDataStart, fileDataSent);
    xhr.open('POST', '/Portfolio/UploadBinaryFiles', false);

    xhr.setRequestHeader("Cache-Control", "no-cache");
    xhr.setRequestHeader("X-File-Name", fileName);
    xhr.setRequestHeader("X-File-Size", fileSize);
    xhr.setRequestHeader("X-File-BytesSent", fileDataSent);
    xhr.setRequestHeader("X-File-SplitCounter", fileSplitCounter);
    xhr.setRequestHeader("Content-Type", "multipart/form-data");

    xhr.send(blobOrFile);
Run Code Online (Sandbox Code Playgroud)

服务器端代码加入

    FileStream fsSource = new FileStream(FileOutputPath, FileMode.Append);

    // Loop through all the files with the *.part extension in the folder
    foreach (FileInfo fiPart in diSource.GetFiles(@"*.part"))
    {
        // Create a byte array of the content of the current file
        Byte[] bytePart = System.IO.File.ReadAllBytes(fiPart.FullName);
        // Write the bytes to the …
Run Code Online (Sandbox Code Playgroud)

javascript c# ajax asp.net-mvc html5

6
推荐指数
1
解决办法
1233
查看次数

如何使用 Ajax 将文件和表单数据一起发布到 MVC 控制器?

我正在尝试使用 jquery Ajax 将文件与其他表单数据一起发布到 MVC 控制器。

jQuery Ajax 调用

function SaveStundent () {
    var formData = new FormData();

    var file = document.getElementById("studImg").files[0];
    formData.append("studImg", file);

    var studentDetails = {
    Name: $('#txtName').val().trim()
    };

    formData.append("studentDetails", studentDetails);

        $.ajax({
        type: "POST",
        url: "@(Url.Action("CreateStudent", "Student"))",          
        data: formData,
        processData: false,
        contentType: false,
            success: function (response) {
            }
        });
}
Run Code Online (Sandbox Code Playgroud)

MVC控制器

[HttpPost]
public ActionResult CreateStudent(Student studentDetails)
{
// ...
}
Run Code Online (Sandbox Code Playgroud)

学生模特

public class Student
{
    public string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

虽然我能够在请求中获取文件,但studentDetailsMVC 控制器中的参数始终为空。

c# ajax asp.net-mvc jquery

6
推荐指数
1
解决办法
1万
查看次数

Javascript onload和onunload

考虑以下包含一些javascript利用prompt和的HTML片段unload.该prompt()方法工作正常但我想在重新加载或离开页面时提醒诸如Goodbye,用户之类的东西.任何帮助是极大的赞赏.

<body onload="promptName()" >


        <script type="text/javascript">
        function promptName()
        {
            var userName = prompt("What's your name ?", "")
            return userName;
        }

        function goodBye()
        {
            alert("Goodbye, " + promptName() + "!");
        }

        window.onunload = goodBye();

        </script>

  </body>
Run Code Online (Sandbox Code Playgroud)

html javascript onload onunload

4
推荐指数
1
解决办法
4万
查看次数

使用ajax表单上传mvc3文件 - Request.Files为空

我正在使用mvc3,并试图创建一系列ajax表单,每个表单上传一个文件,在一个页面内.这是该页面的视图:

@{
    ViewBag.Title = "Index";
}
<h2>
    Index</h2>

    @Html.Partial("_UploadItem")
    @Html.Partial("_UploadItem")
    @Html.Partial("_UploadItem")

<script type="text/javascript">
    function Go() {
        // loop through form tags
        for (var n = 0; n < document.forms.length; n++) {
            var f = document.forms[n];
            // if a dress is chosen, a caption is chosen
            // and a file is chosen, then submit the ajax form
            if (f.dressid.value != '' &&
               f.dresscaption.value != '' &&
               f.fileitem.value != '')
                f.submit();
        }
    }
</script>
<input type="button" onclick="Go();"/>
Run Code Online (Sandbox Code Playgroud)

然后Go()函数循环遍历ajax表单,检查每个表单上的所有3个部分(dressid,dresscaption和fileitem)是否为非空,并且调用提交表单,启动异步上载.

这是局部视图:

@using SoRefeising.Models
@using …
Run Code Online (Sandbox Code Playgroud)

ajax asp.net-mvc uploading asp.net-mvc-3

2
推荐指数
1
解决办法
1万
查看次数

如何在使用MVC返回函数后调用javascript?

之后如何获得Doctor Experience标签面板submit uploading image

Cs.Html:

 @using (Html.BeginForm("AddDoctorImage", "Doctor", FormMethod.Post, new { enctype = "multipart/form-data" }))
            {
                <section>
                    <div class="row">
                        <div class="col-lg-4">
                            <fieldset class="form-group">
                                <label class="form-label semibold">Upload Doctor Image</label>&nbsp;&nbsp;
                                @*<input type="file" name="postedFile" id="txtUploadImage" class="btn btn-rounded btn-file" style="cursor:pointer;" />*@
                                <span class="btn btn-rounded btn-file">
                                    <span>Choose file</span>
                                    <input type="file" name="postedFile" id="postedFile">
                                </span>
                            </fieldset>
                        </div>
                        <div class="col-lg-4">
                            <fieldset class="form-group">
                                <label class="form-label semibold">Perview Image</label>&nbsp;&nbsp;
                                <img id="image_upload_preview" src="http://placehold.it/100x100" alt="your image" />
                                <a id="remove" onclick="javascript:ClearFileUploadControl();" style="display: none; cursor: pointer;">Remove</a>
                            </fieldset>
                        </div>
                        <div class="col-lg-4">
                            <input type="submit" …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asp.net-mvc-4

1
推荐指数
1
解决办法
1874
查看次数