从fileupload窗口读取文本框中的文件名

时间:2013-04-05 05:04:26

标签: jquery asp.net file-upload

在我的asp.net应用程序中,我使用了Textboxbuttonhidden fileupload control
当使用jquery单击Button时,我得到fileupload window,如下所示,

protected void btn_browse_Click(object sender, EventArgs e)
{
    StringBuilder strScript = new StringBuilder();
    strScript.Append("$(document).ready(function(){");
    strScript.Append("$('#FileUpload1').click();");
    strScript.Append("});");
    Page.ClientScript.RegisterStartupScript(this.GetType(), "Script", strScript.ToString(), true);
    txt_fileName.Text=FileUpload1.FileName;
}

我的问题是,我无法显示从fileuploadtextbox的所选文件名 文件名未显示在textbox

任何建议。

1 个答案:

答案 0 :(得分:2)

在服务器端,你可以这样做:

string filename = Path.GetFileName(fID.PostedFile.FileName);
fID.SaveAs(Server.MapPath("Files/"+filename));
string fpath = "Files/"+filename;

并使用jquery:

$(document).ready(function () {  
   $("#btnFileUpload").click(function () {  
        var FUpload = $("#FileUploadControl").val();  
    }
 } 

适用于JavaScript:

<script type="text/javascript">
function getFileName() {
var varfile = document.getElementById("FileUploadControl");
document.getElementById("filename").value = varfile.value;
}
</script>

FileUpload控件将是:

<asp:FileUpload ID="FileUploadControl" runat="server" onchange="getFileName()"