ASP.NET MVC使用Extra Data和Jquery上传

时间:2009-09-04 17:56:45

标签: jquery asp.net-mvc upload

我正在关注使用jQuery上传的另一个问题的示例。

http://aspzone.com/tech/jquery-file-upload-in-asp-net-mvc-without-using-flash/

我想通过其他表单元素扩展这一点,以便为上传添加更多数据。知道如何做到这一点?

1 个答案:

答案 0 :(得分:1)

您链接到的网站使用jQuery ajaxUploadForm函数执行ajaxForm形式的帖子。我假设当您将输入元素添加到ajaxUploadForm表单时,将包含额外的输入数据。

尝试一下:将标记更改为以下内容(从相关网站借用):

<script type="text/javascript">   1:  
    $(function() {

        $("#ajaxUploadForm").ajaxForm({
            iframe: true,
            dataType: "json",
            beforeSubmit: function() {
                $("#ajaxUploadForm").block({ message: '<h1><img src="/Content/busy.gif" /> Uploading file...</h1>' });
            },
            success: function(result) {
                $("#ajaxUploadForm").unblock();
                $("#ajaxUploadForm").resetForm();
                $.growlUI(null, result.message);
            },
            error: function(xhr, textStatus, errorThrown) {
                $("#ajaxUploadForm").unblock();
                $("#ajaxUploadForm").resetForm();
                $.growlUI(null, 'Error uploading file');
            }
        });
    });
</script>

<form id="ajaxUploadForm" action="<%= Url.Action("AjaxUpload", "Upload")%>" method="post" enctype="multipart/form-data"> 
    <fieldset>
     <legend>Upload a file</legend>
     <label>File to Upload: <input type="file" name="file" />(100MB max size)</label>
     <input type="text" id="someOtherInputElement" value="Test" />
     <input id="ajaxUploadButton" type="submit" value="Submit" />
    </fieldset>
</form>