Ajax无刷新Url提交页面
尤其是在Jquery,porotype,Ext等框架流行之后,大量简化的代码可说是为程序员带来了福音,
从繁重的代码工作之中解脱出来,轻易的就可以实现过去书写复杂的功能。
不过有利有弊,到如今,习惯了使用各种框架,而很少自己书写内部源码的程序员们,还有几个记得Ajax那其实并不算复杂的基本代码呢?
今天,为了不遗忘当初的热忱,我把这基础的代码再贴出来,给自己回顾一下。
1。对于Ajax来说,判断浏览器的类别是一个重复而且毫无新意的工作,这段代码完全可以封装起来,随意调用。
代码如下:
function xmlhttp()
{
var A=null
try
{
A=new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e)
{
try
{
A=new ActiveXObject("Microsoft.XMLHTTP");
}
catch(oc)
{
if(typeof XMLHttpRequest!="Undefined")
{
A=new XMLHttpRequest();
}
}
}
return A;
}
不解释了,反正就算不懂,直接复制过去用也是没有问题的。
2。接下来是提交Url的代码。
整个过程其实大同小异,大部分代码其实都可以封装起来,只要将参数传入,再获取结果就可以了。
function Ajax(url)
{
var XmlHttp=new xmlhttp();
try
{
XmlHttp.open("POST",url,true);
var result=SendUrl();
}
catch(e)
{
alert(e);
}
}
function SendUrl()
{
XmlHttp.send();
XmlHttp.onreadystatechange=function()
{
if(XmlHttp.readyState==4 && XmlHttp.status==200)
{
var result=XmlHttp.responseText;
return result;
}
}
}
相关推荐
-
使用ajax实现无刷新改变页面内容和地址栏URL
在访问现在很火的google plus时,细心的用户也许会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变.并且能够很好的支持浏览器的前进和后退.不禁让人想问,是什么有这么强大的功能呢? HTML5里引用了新的API,就是history.pushState和history.replaceState,就是通过这个接口做到无刷新改变页面URL的. 与传统的AJAX的区别 传统的ajax有如下的问题: 虽然ajax可以无刷新改变页面内容,但无法改变页面URL 其次为了更好的可访
-
使用ajax和history.pushState无刷新改变页面URL示例
表现 如果你使用chrome或者firefox等浏览器访问本博客.github.com.plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变.并且能够很好的支持浏览器前进和后退. 是什么有这么强大的功能呢? HTML5里引用了新的API,history.pushState和history.replaceState,就是通过这个接口做到无刷新改变页面URL的. 与传统的AJAX的区别 传统的ajax有如下的问题: 1.可以无刷新
-
JS+Ajax+Jquery实现页面无刷新分页以及分组 超强的实现第1/2页
复制代码 代码如下: <%@ Page language="c#" Codebehind="GroupText.aspx.cs" AutoEventWireup="false" Inherits="test1.GroupText" %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > <HTML&g
-
基于iframe实现类似于ajax的页面无刷新
本方法是基于iframe实现的,需求是form表单提交带有文件上传的input标签,因此不能使用ajax来提交 首先: 复制代码 代码如下: <form id="form0" action="${pageContext.request.contextPath}/news/baikeAdd.form" enctype="multipart/form-data" method="POST" target="hidd
-
使用Yii整合的pjax(pushstate+ajax)实现无刷新加载页面
Pjax是啥? Pjax = history.pushState + Ajax = history.pushState + Async JS + XML(xhr?) BOM对象history被增强了一波,主要是对历史栈的操作,以前只有 replace , go 之类的,都会跳转并刷新整个页面,现在有了 pushState , replaceState 等等单纯操作历史栈的方法,只是单纯修改历史栈里的内容,没有副作用(页面不会跳转刷新) PJAX效果 通过url可以跟踪ajax的动态加载内容.这种
-
ajax页面无刷新 IE下遭遇Ajax缓存导致数据不更新的问题
在做ajax页面无刷新添加的时候,IE下遭遇Ajax缓存,因为刚开始并不知道IE有这个坏毛病,折腾好久,终于解决问题. 总结一下解决办法: 在IE下用Ajax请求某一页面,通常会因为缓存的原因而返回上一次的结果,造成混乱,[即get方式时,获取数据,因发送参数和地址都一致,故IE浏览器会从缓存中取,而不会去请求服务器端,而post方式因为参数的不同,不会产生这个问题]而FF下不会出现这种情况.为了不受缓存影响,可以这样做: IE访问策略: Internet选项--浏览历史记录--设置-- Int
-
pushState、replaceState、onpopstate 实现Ajax页面的前进后退刷新
使用Ajax可以异步获取数据,可以更高效地渲染页面. 但也存在这一些问题: 再刷新页面,页面就会变成初始的状态 浏览器的前进后退功能无效 对搜索引擎的爬虫抓取不友好 1. 早前会使用浏览器的 hash锚点 来解决 不同的hash标记着页面不同的部分,能修正页面刷新数据不正确的问题 再通过 onhashchange 事件监听hash锚点的变化,手动进行前进后退操作,浏览器支持度 2. 随后出现一种 hashbang 的技术,即在url后加上标记 #!/myPath 来解决上述的问题 通过一个路径定
-
pushState实现Ajax无刷新页面切换
前言 这样的需求很常见:点击页码局部更新页面(非整体刷新),并且产生历史管理.局部刷新很容易实现,ajax可以满足我们的需要,但是这并不会产生历史管理,好在html5给我们提供了几个好用的api方便解决这个问题,见下文. 正文 一.API 1.pushState pushState()有三个参数:一个状态对象.一个标题(现在会被忽略),一个可选的URL地址. state:与要跳转到的URL对应的状态信息. title:空字符串(以后可能有用). url:要跳转到的URL地址,不能跨域. 作用:将
-
PHP Ajax实现页面无刷新发表评论
大家都有在网站发表评论的经历,传统的发表过程无非是:发表->提交页面表单->等待刷新页面,这样在网络比较拥挤的时候,往往需要漫长的等待,今天介绍用PHP+Ajax实现页面无刷新发表评论,希望对初学ajax的PHPer有所帮助. 那么首先,我们需要一个基本的ajax开发框架,文件ajax.js就包含了这个框架,代码如下: var http_request=false; function send_request(url){//初始化,指定处理函数,发送请求的函数 http_request
-
Ajax无刷新Url提交页面
尤其是在Jquery,porotype,Ext等框架流行之后,大量简化的代码可说是为程序员带来了福音, 从繁重的代码工作之中解脱出来,轻易的就可以实现过去书写复杂的功能. 不过有利有弊,到如今,习惯了使用各种框架,而很少自己书写内部源码的程序员们,还有几个记得Ajax那其实并不算复杂的基本代码呢? 今天,为了不遗忘当初的热忱,我把这基础的代码再贴出来,给自己回顾一下. 1.对于Ajax来说,判断浏览器的类别是一个重复而且毫无新意的工作,这段代码完全可以封装起来,随意调用. 复制代码 代码如下:
-
jQuery实现form表单基于ajax无刷新提交方法详解
本文实例讲述了jQuery实现form表单基于ajax无刷新提交方法.分享给大家供大家参考,具体如下: 首先,新建Login.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.o
-
jQuery实现form表单基于ajax无刷新提交方法实例代码
本文实例讲述了jQuery实现form表单基于ajax无刷新提交方法.分享给大家供大家参考,具体如下: 首先,新建Login.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.o
-
PHP+Ajax无刷新带进度条图片上传示例
项目需求:1.PHP+Ajax无刷新带进度条图片上传,2.带进度条.所需插件:jquery.js,jquery.form.js. 最近在做一个手机web项目,需要用到Ajax上传功图片能,项目要求PHP无刷新上传图片,并且要带进度条,下面就来讲一下我的实现方法,先看效果图 本示例需要使用的是jquery.js,jquery.form.js,demo里面包含有,你可以在文章下方进行下载. 第一步,建立前端页面index.html 此段是前端展示内容,这里需要说明的是由于input:file标签显示
-
ajax无刷新验证注册信息示例
ajax无刷新验证注册信息示例,其大概思路如下: 一.把注册的html页面做好(html+css) 1.不需要form表单,直接用div包着 2.需要四个标签来显示正确.错误的信息显示 3.不用submit提交按钮,直接用button 如图: 二.把ajax做成一个函数,通过传简单的参数可以与服务器进行数据交换. 1.这个ajax函数前面有一篇如何处理利用ajax处理返回数据的文章中详细说明了. 2.ajax函数需要三个参数,url,jsonData,getMsg.这里的url都是regProc
-
php+Ajax无刷新验证用户名操作实例详解
本文实例讲述了php+Ajax无刷新验证用户名操作.分享给大家供大家参考,具体如下: AJAX 简介 AJAX = Asynchronous JavaScript And XML(异步 JavaScript 及 XML) AJAX 是 Asynchronous JavaScript And XML 的首字母缩写. AJAX 并不是一种新的编程语言,而仅仅是一种新的技术,它可以创建更好.更快且交互性更强的 web 应用程序. AJAX 使用 JavaScript 在 web 浏览器与 web 服务
-
ajax无刷新分页的简单实现
本文实例为大家分享了ajax无刷新分页的具体代码,供大家参考,具体内容如下 html页 <html> <head> <title></title> <style type="text/css"> table{ border:solid 1px #444; background-color:Aqua;} table td{border:solid 1px #444;} </style> <script src=
-
简单实现Ajax无刷新分页效果
Ajax无刷新分页效果,如下代码实现 <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Ajax无刷新分页效果</title> <script type="text/javascript"> function showpage(url) { var xhr = new XML
-
jQuery实现ajax无刷新分页页码控件
这段时间在做公司项目的时候需要用到ajax进行分页(点击页码也是无刷新的显示上一页或下一页的内容,不是一般的选择跳转),但是在网上找了一下,大部分分页插件都是直接刷新跳转的,感觉和我的需求差距比较大,就自己动手写了一个可以实现自己需要的功能的js来实现这个控件,实现的效果如下: 因为业务需要,我需要在一个页面创建多个这样的页码控件(有些是在ajax中生成的),显然为每一个控件写一个专属的js是不现实的,所以,我将公共部分提取出来,然后通过传入的选择器不同,对不同的控件进行相应方法的调用. 下面是
随机推荐
- java tapestry5 布局 参数的处理
- Oracle 中文字段进行排序的sql语句
- 一个对于Array的简单扩展
- JavaScript严格模式下关于this的几种指向详解
- response.getWriter().write()向前台打印信息乱码问题解决
- 重写document.write实现无阻塞加载js广告(补充)
- Android 中LayoutInflater.inflate()方法的介绍
- Linux下rsync远程数据同步命令的详细介绍
- jQuery弹性滑动导航菜单实现思路及代码
- jQuery中通过ajax调用webservice传递数组参数的问题实例详解
- jquery关于表格及表格列隐藏和显示问题探讨
- 通过DOM脚本去设置样式信息
- 详解Java的环境变量和Tomcat服务器配置
- linux sysctl参数配置详细介绍
- android从系统图库中取图片的实例代码
- 推广传统文化“.中国”域名成注册热点
- CentOS 7.3.1611编译安装Nginx1.10.3+MySQL5.7.16+PHP7.1.2
- 基于ubuntu搭建公网个人邮件服务器(基于postfix,dovecot,mysql)
- Android实现悬浮可拖拽的Button
- Nginx重新编译添加模块的方法