最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

js動(dòng)態(tài)在form上插入enctype=multipart/form-data的問題

 更新時(shí)間:2012年05月24日 20:00:25   作者:  
在做文件上傳的時(shí)候碰到了一個(gè)比較奇怪的問題,IE6,7,8上傳文件總是失敗,服務(wù)端接收不到文件的問題
我們都知道要讓form能提交文件,需要在form上指定enctype=multipart/form-data的attribute,這樣才能上傳文件,關(guān)于enctype的文章很多,就不再做解釋。

問題是因?yàn)槭褂昧薓VC的Html.BeginForm()來輸出表單代碼,默認(rèn)是沒有加入enctype的,

復(fù)制代碼 代碼如下:

@using (Html.BeginForm()) {
}

在PartialView中有一個(gè)<input type="file" />用來上傳文件,又不想為了這個(gè)PartialView去修改父頁面的Html.BeginForm(),我的做法是在PartialView中用腳本來為form加入enctype:

復(fù)制代碼 代碼如下:

$(function(){
$('#file').parents('form').attr('enctype', 'multipart/form-data');
});

最近的主流瀏覽器都測試通過沒問題,唯獨(dú)IE的幾個(gè)舊版本出問題,試了手工在Html.BeginForm()中加入enctype是可以解決問題的,說明問題出在以上的腳本。多方查找終于發(fā)現(xiàn)出題出現(xiàn)在于IE6,7,8不支持直接attr('enctype', 'multipart/form-data'),而是設(shè)置dom屬性encoding='multipart/form-data',最終的腳本代碼修改為:

復(fù)制代碼 代碼如下:

$(function () {
$('#file').parents('form').attr('enctype', 'multipart/form-data').get(0).encoding = 'multipart/form-data';
});

相關(guān)文章

最新評(píng)論

朔州市| 舟山市| 澄城县| 巴马| 桐梓县| 襄樊市| 海安县| 邯郸市| 常山县| 乐亭县| 金溪县| 夏邑县| 朝阳县| 丹东市| 穆棱市| 福清市| 湖南省| 寻乌县| 漳州市| 陕西省| 梁平县| 滕州市| 吉木萨尔县| 安宁市| 汝城县| 唐河县| 朝阳县| 南宁市| 盐城市| 墨玉县| 安龙县| 吉安县| 灌阳县| 府谷县| 广德县| 凤翔县| 溧水县| 融水| 黎城县| 阿克苏市| 仙桃市|