最近在做一個網站,用asp.net MVC4.0來開發,今天遇到了兩個小問題,通過查找相關渠道解決了,在這里把這兩個問題寫出來,問題非常簡單,不喜勿噴,mark之希望可以給遇到相同問題的初學者一點幫助。
- 問題一:我要實現文件的異步上傳,前端提交的文件后台老是獲取不到。
我前端是這樣寫的:
@using (Ajax.BeginForm("UpdateNewInfo", "Home", new AjaxOptions() { HttpMethod = "post", OnSuccess = "afterAdd" }, new { id = "form1" })) { <table> <td>選擇圖片</td> <td> <input type="file" id="uploadImg" name="fileUpImg" /> <input type="button" id="btnFileUp" value="上傳圖片"/> </td> </tr> </table> }
選擇一張圖片,點擊上傳圖片按鈕,圖片就異步上傳到服務器,提交的是一個Form表單,使用ajaxSubmit來異步上傳文件。
后台獲取
HttpPostedFileBase postFile = Request.Files["fileUpImg"];
但是postFile對象一直為空,查看Form表單,又顯示有數據,那么問題出在哪里呢?
這個問題困擾了我一上午,然后再博問里提問,馬上就有人指出了我的錯誤。
問題在這里
@using (Ajax.BeginForm("UpdateNewInfo", "Home", new AjaxOptions() { HttpMethod = "post", OnSuccess = "afterAdd" }, new { id = "form1", enctype = "multipart/form-data" }))
原來我們傳文件的時候必須設置Form表單的enctype=”multipart/form-data”。
為什么呢,查了一下這個屬性,我才恍然大悟:
看到這里我不驚又喜又悲,喜的是問題解決了,悲的是自己被這么個問題困擾了一上午。 ̄□ ̄||
- 問題二 如何給富文本編輯器賦值
相信大家都用過富文本編輯器,我使用的是kindeditor-4.1.7富文本編輯器。我用編輯器編輯好了內容,然后儲存到數據庫中,但當我從數據庫中讀取出數據來在用JQuery賦值給富文本時,不能顯示。
解決方法:
http://kindeditor.net/ke4/examples/default.html
通過KindEditor官網上的模板,我最終解決了問題。
今天分享的就這些,非常簡單,希望對大家有所幫助。