NeatUpload上传组件的问题
有谁用过NeatUpload组件啊?我昨天下载下来在测试项目里,能成功使用,但是今天我用同样的方法在我新项目里就有问题了,
问题:没加ajax能成功上传,如果加上ajax点上传就会出现"未将对象引用设置到实例",就是那个InputFile控件为null,
不知道怎么回事;
由于代码过多,只能贴出重要代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="PersApply.aspx.cs" Inherits="MemberCenter_PersApply" %>
<%@ Register Assembly="Brettle.Web.NeatUpload" Namespace="Brettle.Web.NeatUpload"
TagPrefix="Upload" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script>
//<![#CDATA[
function showBar()
{
document.getElementById("bar").style.display='block';
}
// ]]>
</script>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<Upload:InputFile ID="InputFileIndex" runat="server" Visible="false" Width="330px" />
<div id="bar" style="padding-top:-200px; display:none; height: 300px;">
<Upload:ProgressBar ID="ProgressBarIndex" runat='server' Inline="true" Width="500px" Height="200px" Triggers="Upload">
</Upload:ProgressBar>
<asp:Button ID="btnIndexMoney" runat="server" Text="上传" OnClientClick="showBar()" OnClick="btnIndexMoney_Click"/>
</div>
</ContentTemplate>
</asp:UpdatePanel>
-------------------------
PersApply.aspx.cs:
public partial class MemberCenter_PersApply : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void btnIndexMoney_Click(object sender, EventArgs e)
{
if (InputFileIndex.ContentLength == 0)
{
ScriptManager.RegisterClientScriptBlock(this, typeof(Page), "Alert", "alert('请选择文件');", true);
return;
}
if (InputFileIndex.HasFile)
{
string FileName = this.InputFileIndex.FileName;//获取上传文件的文件名,包括后缀
string ExtenName = System.IO.Path.GetExtension(FileName);//获取扩展名
ExtenName = ExtenName.ToLower();
if (ExtenName == ".flv" || ExtenName == ".exe" || ExtenName == ".mp4" || ExtenName == ".3gp" || ExtenName == ".rm" || ExtenName == ".rmvb" || ExtenName == ".avi" || ExtenName == ".wmv")
{
string url = "UploadFiles/Video" + DateTime.Now.ToString("yyyyMMddhhmmss") + ExtenName; //文件保存的路径
float FileSize = (float)System.Math.Round((float)InputFileIndex.ContentLength / 1024000, 1); //获取文件大小并保留小数点后一位,单位是M
SaveFileName = System.IO.Path.Combine(System.Web.HttpContext.Current.Request.MapPath("UploadFiles/Video"), DateTime.Now.ToString("yyyyMMddhhmm") + ExtenName);//合并两个路径为上传到服务器上的全路径
InputFileIndex.MoveTo(SaveFileName, Brettle.Web.NeatUpload.MoveToOptions.Overwrite);
}
else
{
ScriptManager.RegisterClientScriptBlock(this, typeof(Page), "Alert", "alert('文件格式不正确');", true);
return;
}
}
}
}
----------
web.config
<httpModules>
<add name="UploadHttpModule" type="Brettle.Web.NeatUpload.UploadHttpModule, Brettle.Web.NeatUpload"/>
</httpModules>
为什么加了ajax就出错?