要通過(guò)ajax保存表單,一切都OK,測(cè)試也通過(guò),卻發(fā)現(xiàn)文件沒(méi)有上傳成功!然后就有了用 ajax是否可以上傳文件的疑問(wèn)。
找遍資料得出結(jié)果:不能
不過(guò)同時(shí)也找到了解決辦法,就是用iframe的方式來(lái)提交表單,即實(shí)現(xiàn)無(wú)刷新提交表單又可以上傳文件!
一、HTML代碼
<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>無(wú)刷新提交表單</title>
<script type="text/javascript">
<!--
function callback(str){
alert(str);
}
// --></script>
</head>
<body>
<form name="form1" method="POST" action="../post.php" target="post_frame" enctype="multipart/form-data">
<iframe name='post_frame' id="post_frame" style="display:none;" mce_style="display:none;"></iframe>
<input type="file" name="img" />
<input name="power[]" type="text"/>
<input type="submit" value="完成以上修改" name="submit" />
</form>
</body>
</html> 二、PHP代碼(處理代碼)
這里的代碼就想怎么寫(xiě)怎么寫(xiě)了,不過(guò)這個(gè)里執(zhí)行完了剛才那個(gè)HMTL頁(yè)面應(yīng)該要有所表現(xiàn),這時(shí)就要用到上個(gè)頁(yè)面中的 function callback()了
echo ("<script type="text/javascript">parent.callback('操作成功 ! ')</ script>");
更多信息請(qǐng)查看IT技術(shù)專欄