<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script type="text/javascript">
window.onload=function()
{
var fm=document.getElementsByTagName("form")[0]; fm.onsubmit=function()
{
//var username=document.getElementById("username").value;
// var password=document.getElementById("password").value;
// var email=document.getElementById("email").value;
//var fmdata="username="+username+"&password="+password+"&email="+email; var fmdata=new FormData(fm); var xhr=new XMLHttpRequest();
xhr.onreadystatechange=function()
{
if(xhr.readyState==4)
{
eval("var obj="+xhr.responseText); document.getElementById("scjg").innerHTML=obj.jg;
if(obj.name!=null){
document.getElementById("sctp").innerHTML='<img src=\"'+obj.name+'\" width="89" height="70" alt=""/>';}
} }
xhr.open("POST","/1.php");
//使用formData不用设置表头
//xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xhr.send(fmdata);
return false;
} }
</script>
</head> <body>
<div id="scjg"></div>
<div id="sctp"></div>
ajax+FormData+javascript 实现无刷新表单注册
<form method="post">
姓名<input name="username" type="text" id="username">
<br>
密码<input name="password" type="password" id="password">
<br>
邮箱<input name="email" type="text" id="email">
<br>
文件<input name="nfile" type="file" id="nfile">
<br>
<input type="submit" value="提交"></form>
</body>
</html>
<?php
//print_r($_POST);
//print_r($_FILES);
$ary=array();
if($_FILES["nfile"]["error"]>0){
$ary['jg']='上传附件有问题,有可能没有附件';
echo json_encode($ary);
exit();
} $path="./upfile/"; $name=$_FILES["nfile"]['name'];
//附件上传
if(move_uploaded_file($_FILES["nfile"]['tmp_name'],iconv("UTF-8","GBK",$path.$name)))
{
$ary['jg']="上传成功";
$ary['name']=$path.$name;
}else{
$ary['jg']="上传失败";
}
echo json_encode($ary); ?>

ajax+FormData+javascript 实现无刷新上传附件的更多相关文章

  1. ajax+FormData+javascript实现无刷新表单信息提交

    ajax+FormData+javascript实现无刷新表单信息提交 原理: dom收集表单信息,利用FormData快速收集表单信息  ,实例化表单数据对象 同时收集fm的表单域信息. var f ...

  2. ajax+FormData+javascript 实现无刷新表单注册

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  3. 基于jQuery的ajax系列之用FormData实现页面无刷新上传

    接着上一篇ajax系列之用jQuery的ajax方法向服务器发出get和post请求写,这篇主要写如何利用ajax和FormData实现页面无刷新的文件上传效果,主要用到了jQuery的ajax()方 ...

  4. 文件上传---form表单,ajax,jquery,以及iframe无刷新上传 (processData,contentType讲解)

    服务端程序: import tornado.web import os IMG_LIST=[] class IndexHandler(tornado.web.RequestHandler): def ...

  5. ajax实现无刷新上传附件并且显示进度条的实例

    首先:得把php.ini中的post_max_size和upload_max_filesize改成200M或更大(进度条好看效果,默认是2M) html和js代码: <!DOCTYPE html ...

  6. jquery ajax php 无刷新上传文件 带 遮罩 进度条 效果的哟

    在很多项目中都会叫用户上传东西这些的,自从接触了jquery 和ajax之后就不管做什么,首先都会想到这个,我这个人呢?是比较重视客户体验的,这次我这边负责的是后台板块,然后就有一块是要求用户上传照片 ...

  7. ajax 无刷新上传

    最近要做微信的图文上传,因为一个图文了表中可以有多个图文,所有按钮需要随时添加,所以做了一种无刷新上传的方法. 首先我们要在html页面中写上这样的几段代码 javascript: $(functio ...

  8. ajax +jsp+iframe无刷新上传文件[转]

    http://hi.baidu.com/zj360202/blog/item/f23e3711f929c774cb80c475.html ajax jsp 无刷新上传文件 2009-10-26 16: ...

  9. jQuery AJAX 网页无刷新上传示例

    新年礼,提供简单.易套用的 jQuery AJAX 上传示例及代码下载.后台对文件的上传及检查,以 C#/.NET Handler 处理 (可视需要改写成 Java 或 PHP). 有时做一个网站项目 ...

随机推荐

  1. UVa 10935 - Throwing cards away I (队列问题)

    原题 Throwing cards away I   Given is an ordered deck of n cards numbered 1 to n with card 1 at the to ...

  2. java面试(毕业一年后准备换工作)

    还记得一年前的今天,在网上投简历,找工作,当时找的工作的工作地点都在成都,其实自己挺想去外面工作几年的,如果毕业后就在成都工作,今后基本不可能去外省了, 所以刚好上海的一家外包公司来成都理工校招,导员 ...

  3. Spark笔记-treeReduce、reduce、reduceByKey

    参考资料: http://stackoverflow.com/questions/32281417/understadning-treereduce-in-spark http://stackover ...

  4. 把图片生成Base64字符串

    public class ImgeUtils { public static String img2String(BufferedImage img,String type){ String imgS ...

  5. Android 介绍spydroid每个包的大体功能

    看了接近一周的spydroid源代码,对spydroid这个开源项目有了一定的认识.也许有些理解不一定正确,给后来者一点启示.也是自己对rtsp协议,rtp协议的总结. 在windows下,如果安装了 ...

  6. COJ 0581 4022农夫喂牛

    4022农夫喂牛 难度级别:D: 运行时间限制:1000ms: 运行空间限制:51200KB: 代码长度限制:2000000B 试题描述 农夫老张养了N头牛,编号分别从1到N.现在,它们要“用餐”,按 ...

  7. -_-#【Angular】自定义指令directive

    AngularJS学习笔记 <!DOCTYPE html> <html ng-app="Demo"> <head> <meta chars ...

  8. 【转】linux内核调试技巧之一 dump_stack

    原文网址:http://blog.csdn.net/dragon101788/article/details/9419175 在内核中代码调用过程难以跟踪,上下文关系复杂,确实让人头痛 调用dump_ ...

  9. cf590B Chip 'n Dale Rescue Rangers

    B. Chip 'n Dale Rescue Rangers time limit per test 1 second memory limit per test 256 megabytes inpu ...

  10. 在vim下写python 会出现python错误:unexpected unident

    需要在.vimrc  的set tabstop=4的这一行上面增加  set expandtab 否则会报unexpected unident