你按f5相当于重新加载当前页面,点击按钮时动态加载当前页面,不可能保持不变。
为了达到不变的效果,可以在body 刚加载页面的时候加载内容,跟刷新一样。
实现局部刷新,首先需要明白ajax的原理:其本质就是,通过ajax异步请求服务器,然后把返回的内容展示到页面上。
例如:页面中有个列表,id='list-bolck',请求后,服务器返回数据赋值到这个id中即可实现局部刷新:
.....
success: function(response){。
$("#list-bolck").html(response);。
......
==================有问题可以随时回复我=======================。
以下是ajax的一些参数:
$.ajax({
type:'post',。
url:'/testajax.php',。
dataType:'json',。
data:{uid:uid,rands:Math.random()},。
success: function(){。
alert('ajax return success');。
}});
url,类型:String,默认值: 当前页地址。发送请求的地址。
data, 类型:String,发送到服务器的数据。将自动转换为请求字符串格式。GET 请求中将附加在 URL 后。查看 processData 选项说明以禁止此自动转换。必须为 Key/Value 格式。如果为数组,jQuery 将自动为不同值对应同一个名称。如 {foo:["bar1", "bar2"]} 转换为 '&foo=bar1&foo=bar2'。
dataType,类型:String,预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:。
"xml": 返回 XML 文档,可用 jQuery 处理。
"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
"json": 返回 JSON 数据 。
"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
"text": 返回纯文本字符串。
success,当请求之后调用。传入返回后的数据,以及包含成功代码的字符串。
=====================================。
把页面内容放在一个 Div里 iD随便取名,
然后做一个View 和页面内容一样的.随时准备 mvc ajax提交后的数据返还给这个View.。
然后把View镶嵌在 这DIV里。
AjaxOptions 属性里 UpdateTargetId = “DivID” 。
实现这个要js+ajax
文本框可以不用放在form里面 按扭可以不用submit类(因为如果是submit在form里按它会刷新页面), 按扭可以是button,可以给它设置onclick命令,通过js取文本框里的内容,用ajax发给a.asp就行了。onreadystatechange这句你也可以不用写如果没有需要。在a.asp页面把接受到的文本输入数据库。
举个简单点的例子。我现在正在做的。
比如说这个页面,我输入账号密码然后提交到后台验证是吧?如果不是ajax局部刷新,整个页面都会刷新一次。
采用ajax的话只会刷新这儿一部分。
具体使用方法,jQuery自带Ajax的。
$.ajax({
在这里面写将前台的值传递到后台url,然后后台判断返回一个参数。
我们预先规定如果返回0则失败,返回1则成功。
0alert("失败");
1我直接登录成功跳转到首页。
});
刷新页面的代码是 window.location.href = location.href;。
你可以在需要刷新的地方加入这个代码就可以了。
原文地址:http://www.qianchusai.com/ajax%E5%8A%A0%E8%BD%BD%E7%9A%84%E9%A1%B5%E9%9D%A2%E5%88%B7%E6%96%B0.html