【2017-06-05】Jquery.ajax

AJAX  是一种网页数据异步加载技术

通过在后台与服务器进行少量数据交换,AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

一、Json   

注意Json里面不可出现单引号,要用双引号转义。

xml   ---  可扩展的标记语言。

Json是一种跨语言的数据传递格式

Json对象格式:"{"key1":"value1","key2":"value2","key3":"value3"}"

注意:最后一个key:value后边不能加逗号

Json数组格式:"[{},{},{}]"

注意:数组格式最后一个Json对象后边也不能加逗号。每一个{}都是一个Json对象

二、ashx     一般处理程序

只有后台部分,用于数据处理。

只需要操作ProcessRequst这个方法里面的内容,如需引用命名空间,则在最顶部引用,其他内容不需要操作。

引Linq命名空间    using System.Linq;

引泛型集合命名空间     Using System.Collections.Generic;

引用StringBuilder的命名空间     Using System.Text;

所有的内置对象在ashx里都要通过context来点出来。

获取Json中传来的数据

string s =context.Requst["key"];

 

将返还数据拼成Json结构:

1、Json对象

string end="{\"has\":\"false\"}";

2、Json数组

StringBuilder str = new StringBuilder();

str.Append("[");

str.Append("{\"key1\":\"value1\",\"key2\":\"value2\",\"key3\":\"value3\"}");

str.Append("]");

将要返回的Json数据返回出去

context.Response.Write(end);   或者   context.Response.Write(str);

context.Response.End();

 三、Ajax基本结构 (前台Js部分)

$.ajax({

url:"Insert.ashx",                      要提交到的服务端的相对路径。

type:"post",

data:{"key":"value","key":"value","key":"value"},                 key与服务端接受的key一致。

dataType:"json",

success:function(msg){               处理完毕的回调。()内一般写data或者msg,代表返还的Json数据对象,

alert(msg.has);                    通过这个对象可以点出对象对应的属性获取对应的值。

}

});

<script type="text/javascript">

    $("#txt1").keyup(function () {

        var s = $(this).val();    //取文本框的值

        if (s.length < 6) {

            $("#txt1_msg").text("用户名不可以小于6位!");

            return;    //当文本框的值不够6位时,不进入AJAX
        }

        $.ajax({
            url: "Handler.ashx",
            data: { "uname": s },   //提交的数据,(k:v) k 与例1对应
            type: "post",
            dataType: "json",
            success: function (msg) {
                if (msg.has == ‘false‘) {
                    $("#txt1_msg").text("恭喜!用户名可用!");
                    $("#txt1_msg").css(‘color‘,‘green‘);
                }
                else {
                    $("#txt1_msg").text("用户名已被占用!");
                    $("#txt1_msg").css(‘color‘, ‘red‘);
                }
            }
        });

    });

解析Json数组来展示数据:

function DataLoad() {
        $.ajax({
            url: "LoadData.ashx",
            data: {},
            type: "post",
            dataType: "json",
            success: function (msg) {
                //先清空<tbody></tbody>里面的html代码
                $("#tbody1").empty();
                //循环创建行数据
                for (var i = 0; i < msg.length; i++) {
                    var str = "<tr style=\"background-color: white;\">";
                    str += "<td>" + msg[i].ids + "</td>";
                    str += "<td>" + msg[i].username + "</td>";
                    str += "<td>" + msg[i].password + "</td>";
                    str += "<td>" + msg[i].nickname + "</td>";
                    str += "<td>" + msg[i].sex + "</td>";
                    str += "<td>" + msg[i].birthday + "</td>";
                    str += "<td>" + msg[i].nation + "</td>";
                    str += "<td><input type=\"button\" class=\"btn_update\" name=\"" + msg[i].ids + "\" onclick=\"update(" + msg[i].ids + ")\" value=\"修改\"/>&nbsp;&nbsp;<input type=\"button\" name=\"" + msg[i].ids + "\" onclick=\"deletes(" + msg[i].ids + ")\" class=\"btn_delete\" value=\"删除\"/></td>";
                    str += "</tr>";

                    //将创建的行数据追加到<tbody></tbody>里
                    $("#tbody1").append(str);
                }
            }

        });
    }
时间: 2024-08-07 21:16:42

【2017-06-05】Jquery.ajax的相关文章

【JavaScript】jQuery Ajax 实例 全解析

jQuery确实是一个挺好的轻量级的JS框架,能帮助我们快速的开发JS应用,并在一定程度上改变了我们写JavaScript代码的习惯. 废话少说,直接进入正题,我们先来看一些简单的方法,这些方法都是对jQuery.ajax()进行封装以方便我们使用的方法,当然,如果要处理复杂的逻辑,还是需要用到jQuery.ajax()的(这个后面会说到). 1. load( url, [data], [callback] ) :载入远程 HTML 文件代码并插入至 DOM 中. url (String) :

【转】JQuery.Ajax之错误调试帮助信息

下面是Jquery中AJAX参数详细列表: 参数名 类型 描述 url String (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求方式 ("POST" 或 "GET"), 默认为 "GET".注意:其它 HTTP 请求方法,如 PUT 和 DELETE 也可以使用,但仅部分浏览器支持. timeout Number 设置请求超时时间(毫秒).此设置将覆盖全局设置. async

【转】jquery ajax 方法及各参数详解

在使用jquery的时候,我们经常用到jquery中对ajax的封装,下面对ajax函数的各参数详细说明和讲解,以便更好的理解和使用 $.get(url, data, callback,type) 和 $.post(url, data, callback, type). 1. jQuery.ajax( options ) : 通过 HTTP 请求加载远程数据 这个是jQuery 的底层 AJAX 实现.简单易用的高层实现见 $.get, $.post 等. $.ajax() 返回其创建的 XML

【C++基础 05】友元函数和友元类

友元是一种定义在类外部的普通函数或类,但它需要在类体内进行说明,为了与该类的成员函数加以区别,在说明时前面加以关键字friend. 友元不是成员函数,但是它可以访问类中的私有成员. 友元的作用在于提高程序的运行效率,但是,它破坏了类的封装性和隐藏性,使得非成员函数可以访问类的私有成员. 有两种形式的友元: (1)友元函数:普通函数对一个访问某个类中的私有或保护成员. (2)友元类:类A中的成员函数访问类B中的私有或保护成员. 友元函数: 在类声明的任何区域中声明,而定义则在类的外部. frien

【DOM编程艺术】jquery代码

<script> $(resetFields); //相当于addLoadEvent(resetFields);会弹出1111 function resetFields(){ alert(111); } </script> resetFields函数 <script> $(resetFields); function resetFields(){ $('form input[placeholder]').focus(function(){ var input = $(t

Python之路【第十三篇】jQuery案例-Form表单&amp;插件及扩展

学完这个form表单的案例,如果有人说这个表单(功能)还不够NB(此文不包含样式,样式是CSS比较简单可以根据需求自己添加),那么找武Sir他帮你搞定. 一步一步来 注意事项(目录结构): 在写前端html代码的时候要注意(任何代码都一样),一定要规划好目录结构方便其他的人来看你的代码! 如果还有其他的html页面可以在加一个html存储的文件夹. 1.首先看下HTML主体 <!DOCTYPE html> <html lang="en"> <head>

【自制操作系统05】开启内存分页机制

通过前四章的努力,我们成功将控制权转交给了 loader.asm 这个程序,并且从实模式跨越到了保护模式.第四章讲保护模式的时候我说过,这是我们操作系统的第一个精彩之处.但其实这只是针对之前我们进行的只是无意义的输出,以及硬盘的加载等工作.但到了这一章,之前一步步的努力进入到了保护模式,也只能说是做了很多苦力,其实很多代码都是固定的,给我们发挥的空间也不大. 但是到了本章,可以说终于有能体现出我们设计能力的地方了. 一.实现分页要做哪些事 还是先直接简单说要做的事,再说为什么,实现分页要做以下三

【原创经验分享】JQuery(Ajax)调用WCF服务

最近在学习这个WCF,由于刚开始学 不久,发现网上的一些WCF教程都比较简单,感觉功能跟WebService没什么特别大的区别,但是看网上的介绍,就说WCF比WebService牛逼多少多少,反正我刚开始入门,就没觉得多大区别啦,这次写的东西跟WebService一样,我们写了一个WCF,那当然就是要用的,要用的话,当然不能只能在.NET平台下用了,必须跨平台呀,所以,Ajax能调用,这个基本的要求就必须要实现的了,所以,本次经验分享就是写JQuery的Ajax调用WCF的服务了.   一.新建

【FIR.im赞助】jQuery编程挑战#012:生成菜单添加和删除动画效果

申请达人,去除赞助商链接 定义如下HTML代码: <!-- HTML代码片段中请勿添加<body>标签 //--> <ul id="container"> <li>Java<i class="fa fa-times pull-right"></i></li> <li>Javascript<i class="fa fa-times pull-right&qu