用JS实现AJAX
用JS实现AJAX
准备工作:新建网站,建立两个页面,index.aspx和backstage.aspx,
在工程目录下新建一个文件夹命名和image,在这里添加一个loading.gif,模拟提交进度
一,前台页面代码:在index.aspx中编写
1,在网页要显示数据的地方,添加一个DIV.源代码如下
<div id="showtext"></div>
2, 添加脚本程序,代码如下。
function GetTextFromBack() {
document.getElementById('showtext').setAttribute("innerHTML", "<img src=\"image/loading.gif\" />载入中...");
var xmlhttp;
try {
xmlhttp = new XMLHttpRequest();
} catch (e) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if ( == xmlhttp.readyState) {
if ( == xmlhttp.status) {
var Bodys = xmlhttp.responseText;
document.getElementById('showtext').setAttribute("innerHTML", Bodys);
// parent.document.all.iframemain.style.height = window.document.body.scrollHeight;
// parent.document.all.iframemain.style.width = window.document.body.scrollWidth;
}
}
}
xmlhttp.open("post", "backstage.aspx?name=" + "zhangfei", true);
xmlhttp.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
xmlhttp.send("");
}
</script>
3,加入一个触发事件的按钮
<input type="button" onclick="GetTextFromBack()" style="width: 77px" />
二,后台页面,backstage.aspx
1,清除backstage.aspx中的html的内容,除一第一行的源代码,如下所示
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="backstage.aspx.cs" Inherits="backstage" %>
只保存这一行,不然的话,后面发送的时候,会把其他代码都做为字符串发送回去。
2, 进行C#源程序编辑界面backstage.aspx.cs,添写如下代码
{
string nameFormat = Request.Params["name"];
nameFormat = "你的名字是:"+nameFormat;
Response.Write(nameFormat);
}
到此就可以模拟出AJAX功能了。
可以以此程序为模板,后台拼写字符串,以实现复杂的操作。
注: 以下这条代码的意思是,是重载onreadystatechange方法,
xmlhttp.onreadystatechange = function() {
......
}
类似的可以,重写
window.onload = function()
{
parent.document.all.pzright.style.height=window.document.body.scrollHeight;
parent.document.all.pzright.style.width=window.document.body.scrollWidth;
}
可以利用原有的函数,实现在自已特定的功能。
用JS实现AJAX的更多相关文章
- Vue.js——基于$.ajax实现数据的跨域增删查改
概述 之前我们学习了Vue.js的一些基础知识,以及如何开发一个组件,然而那些示例的数据都是local的.在实际的应用中,几乎90%的数据是来源于服务端的,前端和服务端之间的数据交互一般是通过ajax ...
- Jquery学习笔记 --ajax删除用户,使用了js原生ajax
主要复习了php的pdo数据库操作,和js的ajax,真麻烦,希望jquery的ajax简单点. index.php: 1 <!DOCTYPE html> 2 <html lang= ...
- 分享一个基于长连接+长轮询+原生的JS及AJAX实现的多人在线即时交流聊天室
实现网页版的在线聊天室的方法有很多,在没有来到HTML5之前,常见的有:定时轮询.长连接+长轮询.基于第三方插件(如FLASH的Socket),而如果是HTML5,则比较简单,可以直接使用WebSoc ...
- 原生js实现Ajax
一般来说,大家可能都会习惯用JQuery提供的Ajax方法,但是用原生的js怎么去实现Ajax方法呢? JQuery提供的Ajax方法: $.ajax({ url: , type: '', dataT ...
- 浅谈JS之AJAX
0x00:什么是Ajax? Ajax是Asynchronous Javascript And Xml 的缩写(异步javascript及xml),Ajax是使用javascript在浏览器后台操作HT ...
- Atitit 发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化
Atitit 发帖机实现(3 )---usrQBN023 js提交ajax内容到后端规范与标准化 大段内容务必要替换转义换行符号1 提交务必使用utf编码,否则解码后的可能缺失,是web serv ...
- prototype.js 和 jQuery.js中 ajax 的使用
这次还是prototype.js 和 jQuery.js冲突的问题,前面说到过解决办法http://www.cnblogs.com/Joanna-Yan/p/4836252.html,以及上网说的大部 ...
- Intercooler.js – 让 AJAX 像锚标签一样简单
使用 Intercooler,你可以添加 Ajax 到你的应用程序,而无需使用客户端模式的路由,认证,渲染,工厂或依赖注入.事实上,你不需要写任何的 JavaScript 代码.Intercooler ...
- 使用原生JS封装Ajax
使用原生 的JS封装 Ajax,实现 仿JQuery的Ajax,post,get三种异步请求方式: var MAjax = { //根据浏览器创建异步对象 createXhr: function () ...
- JS实现Ajax,Josn数据的序列化和反序列化---例: 省市区联动(包含get,post)
服务器端相应JOSN数据 用到序列化和反序列化----命名空间using System.Web.Script.Serialization; public void ProcessRequest(H ...
随机推荐
- [spring-framework]Spring定时器的配置和使用
开发中我们常常会做一些定时任务,这些任务有开始时间,并会按一定的周期或规则执行.如此我们在Java程序开发中使用定时器来处理定时任务. <!-- MessageRequestTask类中包含了m ...
- JSP页面间传递参数的5种方法
JSP页面间传递参数是经常需要使用到的功能,有时还需要多个JSP页面间传递参数.下面介绍一下实现的方法. (1)直接在URL请求后添加 如:< a href="thexuan.jsp? ...
- Android 用代码来实现selector
众所周知,android可以通过XML文件来创建selector,以Drawable对象的形式安装到组件上,以提供统一的风格设置.但是在某些时候,我们需要通过代码的形式来实现相同的功能,例如组件数量非 ...
- 14.6.5 Configuring InnoDB Change Buffering 配置InnoDB Change Buffering
14.6.5 Configuring InnoDB Change Buffering 配置InnoDB Change Buffering 当插入,更新,和删除操作在表上执行, 索引列的值(特别是 se ...
- C 常用的输入输出 栈 哈希 文件写读 实现 字符串处理
#include "stdafx.h"#include <stdio.h>#include <string.h>#include <stdlib.h& ...
- 【转】模块编译Android源码方法
原文网址:http://blog.csdn.net/androidlover1991/article/details/17014055 实际开发中,并不需要每次都编译所有源代码,只需要编译自己修改的模 ...
- 20140704笔试面试总结(java)
1.java数组定义 1.与其他高级语言不同,Java在数组声明时并不为数组分配存储空间,因此,在声明的[]中不能指出数组的长度 2.为数组分配空间的两种方法:数组初始化和使用new运算符 3.未分配 ...
- 1‘b0 什么意思
在看datasheet 中有类似表达式如下: 3'b000, 1'b1, 1'b0; 3'b000这个表示:b代表二進制.3代表位元數. 1'b1:宣告為一位元二進制之值為1,一般除了可以宣告b外,也 ...
- [JIT_APP]Android SQLite简介
SQLite介绍 SQLite是一个非常流行的嵌入式数据库,它支持SQL语言,并且只利用很少的内存就有很好的性能.此外它还是开源的,任何人都可以使用它.许多开源项目(Mozilla, PHP, Pyt ...
- ACM1720_A+Bcoming(进制转换的新思路)——代码超少哟!
using namespace std; int main() { int a,b; while(cin>>hex>>a>>b) { cout<<dec ...