您的位置:首页 > 理论基础 > 计算机网络

ajax--无ajax做到无刷新

2016-01-22 15:45 591 查看
ajax是

页面不刷新的情况下

利用xml httprequest 发送http请求

也算是js网络化。

不懂可以先看下面没有ajax时是怎么做到,无刷新发送页面请求的

1 http 协议的204

<img src="http://img5.imgtn.bdimg.com/it/u=2162068664,1173136143&fm=21&gp=0.jpg">
<a href="./1vote.php">投票 1</a>


php点击投票1后 

// 1方法 点链接到这个php,然后利用http协议的204特性
$num=file_get_contents('./1vote.txt');
$num+=1;

file_put_contents('./1vote.txt', $num);

header("Http/1.1 204 No Content");


2图片加载的特性 图片属性src本来填写图片路径,现在改为php文件
<img src="http://img3.imgtn.bdimg.com/it/u=4093643737,3232071282&fm=206&gp=0.jpg">
<input type="button" value="投票2" onclick="vote()" />


js   vote()

<script type="text/javascript">
function vote(){

// 造了一个img图片元素
var jm=document.createElement('img');
// 添加属性 src
jm.setAttribute('src','./1vote.php');

}
</script>


3利用iframe特性 提交表单

<!-- 提交表单不转页  action的内容在regzone里出现 -->
<div id="reg"></div>

<form action="./1vote.php" method="post" target="regzone">
用户名<input type="text" name="username" />
密码<input type="text" name="password" />
<input type="submit" value="提交">
</form>
<iframe name='regzone' width="0" height="0" frameborder="0"></iframe>


iframe不写长宽高能看见有一个区域,属性改为三个0就看不见了

在php里是这个

<script>
parent.document.getElementById('reg').innerHTML="success";
</script>


ajax可以上传文件吗

js读取了文件内容,出于安全,读不了

原理上不能上传

但iframe

html5可以
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php http协议 ajax