Ajax的几种形式 和使用情况
Ajax的几种形式:
1 $.get(
"Login.ashx",
{Name:name,Pwd:pwd,action:x},
function(data){这里用data的返回值进行if判断}
)
2 $.ajax({
type:"post",
url:“Register.ashx”,
data:”Name=”+name+”&&Pwd=”+pwd+”&&action=1”,
//data:{name:name,pwd:pwd,action:2},
Success:function(data){
if (data == "1") {
alert("注Á¡é册¨¢成¨¦功|");
window.location.href = "GetTime.htm";
}
else {
alert("注Á¡é册¨¢失º¡ì败㨹");
}
}
})
3 $.getJSON(
"GetJson.ashx",
{ name: $("#uname").val(), action: 2 },
function (data) {
$("#result tbody").empty();
$.each(data, function (index, item) {
$("#result tbody").append("<tr><td>" + item.ID + "</td><td>" + item.UserName + "</td><td>" + item.Pwd + "</td></tr>");
// $("#result tbody").append("<tr><td>" + item.ID + "</td><td>" + item.UserName + "</td><td>" + item.Pwd + "</td><td><a href='Del.aspx?id="+id+">删¦?除y</a></td><td><a href='Update.aspx?id="+id+"'>修T改?</a></td></tr>");
});
$("#result").show();
});
----------------------------------------------------------------------------------------------------------------
注册:
用户名(id=name),密码(id=pwd),确认密码(id=confirpwd),提交(id=btn)
$(function(){
//就是一个注册事件
$("#btn").click(function(){
//点击btn要判断是不是为空,
var Na=$("#name").val();
var Pw=$("#pwd").val();
var ConPwd=$("#confirpwd").val();
//给一个为空的提示
var err="";
if(Na=="")
{err=err+"用户名不能为空";}
if(Pw=="")
{ere+="密码不能为空";}
if(ConPwd=="")
{err+="确认密码不能为空";}
if(Pw!=ConPwd)
{ err+="俩次密码不一致"; }
if(err!="")
{ Alert(err); return; }
$.ajax({
type:"get",
url:"Hello world.ashx",
data="name="+name+"&pwd="+pwd,
success: function(data){
if(data=="1")
{
alert("注册成功");
window.location.href = "GetTime.htm";
}
else
{
alert(注册失败);
}
}
})
});
});
Ajax=异步JavaScript和xml;
Ajax是通过在后台与服务器进行少量的数据交换,ajax可以在不重新加载整个网页的情况下,对网页的某部分进行更新。
报文指的就是一串数据,就是要传送的的东西
在不同的浏览器中创建对象的方式不同
在IE5/6为 :
var xmlRequest = new ActiveXObject(“Microsoft.XMLHTTP”);
在IE、Firefox、safari和Opera中创建该对象的JavaScript代码为:
var xhr = new XMLHttpRequest();
Ajax在本质上是浏览器端的技术,
Ajax的核心就是创建XMLHttpRequest对象
1. XMLHttpRequest xhr=new XmlHttpRequest(); 创建对象(new 叫助手过来)
2. xhr.Open("post","Hello world.html",ture);创建请求(open 告诉他要做的事)
3. xhr.send("name="+name.value);发送请求(send 去吧),附带传参数
异步使用XMLHttpRequest对象时,必须使用onreadyStatechange事件
1.创建一个对象
2.设置onreadyStatechange事件,触发一个回调函数
xhr.onreadyStatechange=watching;
function watching(){}
xhr.onreadyStatechange=function(){
if(xhr.readyState==4)请求状态
{
if(xhr.Status==200)服务器返回的状态码
{
var span=document.getelementById("ename");
span.innerHtml=xhr.responseText;
}
}
}
----查询ID,展现出账号密码
用户名:<input type="text" id="uid">
<input type="botton" id="btn" value="查询">
<table id="result">
<tr><td>ID</td><td>用户名</td><td>密码</td></tr>
</table>
<script>
$(function(){
$("#Btn").clicl(function(){
var id=$("#uid").val();
if(id=="")
{
return ;
}
$.getJSON(
"GetJson.ashx",
{ID:id},
function(data){
$("#result tbody").append("<tr><td>"+data.ID+"</td><td>"+data.UserName+"</td><td>"+data.UserName
+"</td></tr>");
$("#result").show();
})
})
})
</script>
||||||||||||||||
int id=Convert.ToInt32(context.Request["ID"]);//接受前台的传值过来
UserBll userbll=new UserBll();
UsersModel user=new UsersModel();
user=userbll.GetModel(id);
string s="{ID:"+user.ID+",name:"+userName.UserName+",pwd:"+user.Pwd+"}";
//JavaScriptSerializer js = new JavaScriptSerializer();
// string s = js.Serialize(user);
context.Response.write(s);
-----------------------------------------------------------------------------------------
获取时间
<input type="button" id="GetTime" values="获取时间"/>
<div id="ShowTime"></div>
<script>
window.onload=function(){
var BtnTime=document.getElementById("#GetTime");
BtnTime.onclick=function(){
var showTime=document.GetElementById("ShowTime");
var xhr;
xhr=new XMLHttpRequest();
xhr.open("get","Gettime.ashx?name="+"2b",ture),
xhr.send();
xhr.onreadystatechange=function(){
if(xhr.readyState==4)
{
if(xhr.status==200)
{
showTime.innerHTML=xhr.responseText;
}
}
}
}
}
<script>
||||||||||||||||||||
string name=context.Request["name"];
context.Response.write(name+"你好,现在时间是"+DateTime.Now.ToString());
-------------------------------------------------------------------------------
<script>
window.onload=function(){
var uname=document.GetElementById("uname");
uname.onblur=function(){
if(uname.value=="")
{
return;
}
else
{
var xhr=new XMLHttpRequest();
xhr.open("post","Regiater.ashx",ture),
xhr.send("name="+uname.value+"&action=1");
xhr.onreadystatechange=function(){
if(xhr.readyState==4)
{
if(xhr.status==200)
{
var span=document.getElementById("ename");
span.innerHTML=xhr.responseText:+"日期"+xhr.getRequestHeader("date");
span.innerHTML=xhr.responseText;
}
}
}
}
}
}
---------------------------------------------------------------------
$(function(){
$("btnReg").click(function(){
var name=$("uname").val();
var pwd=$("upwd").val();
var repwd=$("#repwd").val();
var span=$("#ename").val();
var err="";
if (span != "") {
err = err + "用户名已存在";
}
if (name == "") {
err += "用户名不能为空!\n";
}
if (pwd == "") {
err += "密码不能为空\n";
}
if (repwd == "") {
err += " 确认密码不能为空\n";
}
if (pwd != repwd) {
err += "俩次密码不一样\n";
}
if (err != "") {
alert(err);
return;
}
$.ajax({})
$.ajax({
type:"post",
url:"Regiter.ashx",
data:"name="+name+"&pwd="+pwd+"&action=2",
//data:{name:name,pwd:pwd,action:2},
success:function(data){
if(data=="1")
{
alter("注册成功");
window.location.href="GetTime.html";
}
else
{
alert("注册失败");
}
}
})
})
})
<script>
<table>
<tr><td>用户名:</td><td><input type="text" id="uname"><span id="ename"></span></td></tr>
<tr><td>密码:</td><td><input type="password" id="upwd" /></td></tr>
<tr><td>确认密码:</td><td><input type="password" id="repwd" /></td></tr>
<tr><td></td><td><input type="button" value="注册" id="btnReg" /></td></tr>
</table>
|||||||||||||||||||||||||||||||
UsersBll userbll = new UsersBll();
//context.Response.Write("Hello World");
#region
string uname = context.Request["name"];//接受data里的name;
string pwd = context.Request["pwd"];
string action=context.Request["action"];
if (action == "1")//验证用户名是否存在
{
bool tag = userbll.Exist(uname);//bll里都是方法
if (tag)
{
context.Response.Write("用户名存在");
}
else
{
context.Response.Write("");
}
}
else if (action == "2")//注册用户,执行注册代码
{
UsersModel user = new UsersModel();
user.UserName = uname;
user.Pwd = pwd;
int result = userbll.Add(user);
if (result > 0)
{
context.Response.Write(1);//去前台
}
else
{
context.Response.Write("注册失败");
}
}
Ajax的几种形式 和使用情况的更多相关文章
- C++:一般情况下,设计函数的形参只需要两种形式
C++:一般情况下,设计函数的形参只需要两种形式.一,是引用形参,例如 void function (int &p_para):二,是常量引用形参,例如 void function(const ...
- ASP.NET MVC深入浅出(被替换) 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式 第三节: EF调用普通SQL语句的两类封装(ExecuteSqlCommand和SqlQuery ) 第四节: EF调用存储过程的通用写法和DBFirst模式子类调用的特有写法 第六节: EF高级属性(二) 之延迟加载、立即加载、显示加载(含导航属性) 第十节: EF的三种追踪
ASP.NET MVC深入浅出(被替换) 一. 谈情怀-ASP.NET体系 从事.Net开发以来,最先接触的Web开发框架是Asp.Net WebForm,该框架高度封装,为了隐藏Http的无状态 ...
- es6 Object.assign ECMAScript 6 笔记(六) ECMAScript 6 笔记(一) react入门——慕课网笔记 jquery中动态新增的元素节点无法触发事件解决办法 响应式图像 弹窗细节 微信浏览器——返回操作 Float 的那些事 Flex布局 HTML5 data-* 自定义属性 参数传递的四种形式
es6 Object.assign 目录 一.基本用法 二.用途 1. 为对象添加属性 2. 为对象添加方法 3. 克隆对象 4. 合并多个对象 5. 为属性指定默认值 三.浏览器支持 ES6 O ...
- 代替jquery $.post 跨域提交数据的N种形式
跨域的N种形式: 1.直接用jquery中$.getJSON进行跨域提交 优点:有返回值,可直接跨域: 缺点:数据量小: 提交方式:仅get (无$.postJSON) $.getJSON(" ...
- javascript面向对象系列第三篇——实现继承的3种形式
× 目录 [1]原型继承 [2]伪类继承 [3]组合继承 前面的话 学习如何创建对象是理解面向对象编程的第一步,第二步是理解继承.本文是javascript面向对象系列第三篇——实现继承的3种形式 [ ...
- 移动端App广告常见的10种形式
什么是App广告? App广告,或称In-App广告,是指智能手机和平板电脑这类移动设备中第三方应用程序内置广告,属于移动广告的子类别. App广告兴起得益于其载体—App的风行.平板电脑和大屏触 ...
- Qt学习 之 多线程程序设计(QT通过三种形式提供了对线程的支持)
QT通过三种形式提供了对线程的支持.它们分别是, 一.平台无关的线程类 二.线程安全的事件投递 三.跨线程的信号-槽连接. 这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势.多线 ...
- 第一节: 结合EF的本地缓存属性来介绍【EF增删改操作】的几种形式
一. 背景 说起EF的增删改操作,相信很多人都会说,有两种方式:① 通过方法操作 和 ② 通过状态控制. 相信你在使用EF进行删除或修改操作的时候,可能会遇到以下错误:“ The object c ...
- python变量和变量赋值的几种形式
动态类型的语言 python是动态类型的语言,不需要声明变量的类型. 实际上,python中的变量仅仅只是用来保存一个数据对象的地址.无论是什么数据对象,在内存中创建好数据对象之后,都只是把它的地址保 ...
随机推荐
- FireEye APT检测——APT业务占比过重,缺乏其他安全系统的查杀和修复功能
摘自:https://zhidao.baidu.com/question/1694626564301467468.html火眼,APT威胁下快速成长 FireEye的兴起开始于2012年,这时段正好迎 ...
- Kali linux 2016.2(Rolling)中的Exploits模块详解
简单来将,这个Exploits模块,就是针对不同的已知漏洞的利用程序. root@kali:~# msfconsole Unable to handle kernel NULL pointer der ...
- Twilio介绍和使用
1.Twilio是?需要如何才能通过Twilio打国际网络电话 http://uuxn.com/twilio-toll-free-sms介绍了通过网页来收取和发送信息 需求:通过TWILIO拨打国外座 ...
- Uva 1605 Building for UN【构造法】
题意:给出n个国家,给它们分配办公室,使得任意两个国家都有一对相邻的格子 看的紫书,最开始看的时候不理解 后来还是搜了题解--- 发现是这样的 比如说5个国家 应该输出 AAAA BBBB CCCC ...
- 用MyBatis进行数据库的增删改查
前提是MyBatis环境部署好了,参考地址: https://www.cnblogs.com/package-java/p/10316536.html 为了方便演示,我提前在数据库插入了数据方便查询 ...
- Hadoop_MapReduce中Mapper类和Reduce类
在权威指南中,有个关于处理温度的MapReduce类,具体如下: 第一部分:Map public class MaxTemperatureMapper extends MapReduceBase im ...
- vue的表格加单选框
https://www.cnblogs.com/calamus/p/8569196.html
- git远程仓库变更
查看自己的远程仓库 git remote -v 远程仓库变更 git remote remove origin //移出现有的远程仓库的地址 git remote add origin http:// ...
- anaconda安装basemap
https://blog.csdn.net/m0_37556124/article/details/80560384 basemap安装前需要先安装geos conda install geos 其次 ...
- 题解 P3369 【【模板】普通平衡树】
在网上某篇神奇的教程和@codesonic 大佬的标程帮助下,我又肝完了Leafy Tree,跑过来写篇题解(好像以前写过一篇?) 什么是Leafy Tree? Leafy Tree由两种节点组成:辅 ...