使用jquery.form.js的异步上传问题

问题描述 投票:0回答:5

我正在使用

jquery.form
插件在 MVC 项目中异步上传文档。

根据我之前的回答,这是我在页面上的内容: <% using(Html.BeginForm("Create", "JobFile", FormMethod.Post, new { id = "uploadForm", enctype = "multipart/form-data" })) %> <% { %> <%: Html.ValidationSummary() %> <input type="file" id="fileToUpload" /> <input type="submit" value="Upload file" /> <input type="text" id="RelatedFileName" /> <% } %> <script type="text/javascript" src="../../Scripts/jquery-1.4.1.min.js"></script> <script type="text/javascript" src="../../Scripts/jquery.form.js"></script> <script type="text/javascript"> $(function () { $('#uploadForm').ajaxForm(function (result) { if (result.errorMessage != '') { alert(result.errorMessage); } else { $('#RelatedFileName').val(result.fileName); } }); }); </script>

我的问题是,当页面加载时,我收到以下 JavaScript 错误:

未捕获类型错误:对象#没有方法“ajaxForm”

此错误出现在包含
的行上

$('#uploadForm').ajaxForm(function (result) {

谁能告诉我为什么会出现此错误?

jquery ajax forms file-upload asynchronous
5个回答
4
投票


1
投票
method="post"

enctypeencoding="multipart/form-data" var submitForm = function(_formId){ var _genMsg = $('#genMsg'); _submitForm = $('form').index($('#'+_formId)); if(subCommonForm(_submitForm, 'main')){ _genMsg.attr('class', 'information-box round'); _genMsg.html('Saving...'); $('#'+_formId).ajaxForm({ dataType: 'json', success: function (data) { _genMsg.attr('class', 'information-box round'); data.code == 0 ? _genMsg.attr('class', 'confirmation-box round') : _genMsg.attr('class', 'error-box round'); _genMsg.html(data.message); _genMsg.fadeIn(); } }); $('#'+_formId).submit(); } };



0
投票
<form>

对象的 ID 吗?如果是,那么您可能需要检查 FireBug 之类的东西,以确保您的插件正确包含在您的页面上。

    


0
投票

$(function () {

在最新版本的 jQuery 中不起作用,必须使用:

$(document).ready(function () {



0
投票
$

$('#your-form')


而不是

('#your-form')

    

© www.soinside.com 2019 - 2024. All rights reserved.