這篇文章將為大家詳細(xì)講解有關(guān)asp.net如何使用JS+form表單Post和Get方式提交數(shù)據(jù),小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
最近工作中用到了一種使用JS+form用post方式上傳文件一種方式。前臺(tái)用Html input,使用JS方式往服務(wù)器上傳文件,具體實(shí)現(xiàn)看代碼:
前臺(tái)頁(yè)面使用aspx網(wǎng)頁(yè),使用input 標(biāo)簽,用其file類型;此標(biāo)簽不使用runat="server".不使用服務(wù)器控件;這里需要加上一個(gè)iframe標(biāo)簽。并隱藏;設(shè)置一a標(biāo)簽。用來(lái)作為用戶點(diǎn)擊按鈕;調(diào)用JS函數(shù):Uploadfun();
<div> <input type="file" id="FileUpLoad" name="FileUpLoad" /> <a href="javascript:void(0);" rel="external nofollow" onclick="Uploadfun()">上傳</a> <iframe name="hidden_frame" id="hidden_frame" ></iframe> </div>
JS代碼如下:
function Uploadfun(){ var _file = document.getElementById("FileUpLoad"); //此處是前臺(tái)頁(yè)面的 input 標(biāo)簽的ID var _form = document.createElenent("form"); //創(chuàng)建一個(gè)form document.body.appendChild(_form);//添加一個(gè)form _form.encoding = "multipart/form-data"; //使用該編碼規(guī)程可以不限制 post表單2M大小的限制 _form.method="post";//使用POST方式 _form.action="../Service/FileSrv.aspx?Type=Client&CallFun=UploadFile"; //此處使用Get方式,傳到前臺(tái)頁(yè)面的后臺(tái)Server代碼層; // 這個(gè)是本人工作中的項(xiàng)目位置 _form.target = "hidden_frame"; var pos = _file.nextSibling; _form.appendChild(_file); _form.submit(); pos.parentNode.insertBefore(_file,pos); document.body.renoveChild(_form); }
C#層代碼:就是JS代碼中的form的action的所標(biāo)識(shí)。在FileSrv.aspx的后臺(tái)cs代碼中,我們可以通過(guò)使用getquery
方法,得到使用Get方式傳過(guò)來(lái)的參數(shù);
這個(gè)例子里參數(shù)Type=Client是一個(gè)模塊標(biāo)識(shí),CallFun則是指出cs代碼層要調(diào)用的響應(yīng)函數(shù);UploadFile();
代碼如下:
private void UploadFile() { // //......其他代碼 // HttpFileCollection files = HttpContext.Current.Request.Files; if(files.Count>0) { int lintTemp = files[0].FileName.LastIndexOf(".");//得到input標(biāo)簽中的file文件路徑; string lstrFileType = string.Empty; string lstrContentType = string.Empty; if(lintTemp!=-1 &&files[0].FileName.Length>lintTemp+1) { lstrFileType = files[0].FileName.Substring(lintTemp+1).ToUpper(); } if(lstrFileType.ToUpper()=="JPG") { if(files[0].ContentLength<10485760) { //記得要先保存到應(yīng)用程序發(fā)布所在的服務(wù)器上! files[0].SaveAs(Server.MapPath("~/Files/")+"JPG1."+files[0].FileName.Substring(files[0].FileName.LastIndexOf("."))); } } } // //......其他代碼 // }
關(guān)于“asp.net如何使用JS+form表單Post和Get方式提交數(shù)據(jù)”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。
分享名稱:asp.net如何使用JS+form表單Post和Get方式提交數(shù)據(jù)-創(chuàng)新互聯(lián)
當(dāng)前地址:http://chinadenli.net/article14/dggpge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序、軟件開(kāi)發(fā)、自適應(yīng)網(wǎng)站、建站公司、網(wǎng)站排名、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容