Jquery 使用asp.net mvc上载数据和信息(名称、标题)
这是我的cs代码 [HttpPost]Jquery 使用asp.net mvc上载数据和信息(名称、标题),jquery,asp.net-mvc,file-upload,Jquery,Asp.net Mvc,File Upload,这是我的cs代码 [HttpPost] $('.submit').click(function () { var myData = { name: $('#name').val(), resources: $('#resources').val(), } $.ajax({ url: '/Controller/Action', type: 'POST', data: new FormData(t
$('.submit').click(function () {
var myData = {
name: $('#name').val(),
resources: $('#resources').val(),
}
$.ajax({
url: '/Controller/Action',
type: 'POST',
data: new FormData(this) + myData,
processData: false
}).done(function () {
}).fail(function () {
});
});
如果我在数据中发送myData,则没有问题。我做错了吗?或者是否有其他方法可以上载文件并获取附加数据,以便存储在sql server中
所以我不想使用任何jQuery插件
谢谢,理想的解决方案是使用视图模型
public ActionResult View(HttpPostedFileBase file,Info myinformation)
{
//my problem is , debuggers gets hit in this controller but file and myinformation data are null .
return View("index");
}
您的HttpPost操作将接受此对象
public class Create
{
public HttpPostedFileBase File {set;get;}
public Info MyInformation {set;get;}
}
而ajax将是
[HttpPost]
public ActionResult View(Create model)
{
// do something and return something
}
#name
和#resources
是否与文件输入的形式一致?@Musa是的。它们可以是来自用户端的任何内容。嗯,文件的值在回帖中为空。您在哪里传递文件的值?我猜这$(“#resources”).val()提供了文件名,而不是按照我的要求传递整个文件:),那么是什么让您插入整个文件的呢。我可以给你让路,但你必须解决你自己的问题。最终我分开做了。我为他们两人做出了不同的行动结果。不是最好的办法,但别无选择,时间有限。谢谢:)
$('.submit').click(function () {
var myData = {
MyInformation: $('#name').val(),
File: $('#resources').val(),
}
$.ajax({
url: '/Controller/Action',
type: 'POST',
data: myData,
processData: false
}).done(function () {
}).fail(function () {
});
});