详细叙述ajax的详情,ajax的配置详情、ajax的调用解释、ajax的中文乱码和ajax的表单提交(内有实例)...

本篇文章主要的讲述了关于ajax的使用总结说明,还有ajax的配置、调用、中文乱码、表单提交等等详细解释,现在我们一起来看这篇文章吧

·jquery的使用

0、必须优先引入jquery.js 否则无法调用jquery框架

1、js区分大小写,起名字的时候要注意

2、jquery根据p的id属性获取页面text的值:$("#demoID").val(),根据class属性获取页面text的值$(".demoCLASS").val(),如果是赋值$("#demoID").val("赋值的参数")

3、$(document).ready(function(){代码})、$().ready(function(){代码})、$(function(){代码})的含义一样

4、多个$(function(){代码})可以并存,即只要名字不重复可以同时发挥作用

5、$(function(){代码})的意思是页面加载完毕即运行,比如自动点击,自动弹框,再或者点击监听或者其他监听

6、加载完即点击和“点击的监听”的区别(非常有借鉴意义)

比如现在有一个js方法,function demoFunction(){alert("这个方法运行了");};

加载完即点击:$("#demoid").click(demoFunction());

加载完后即监听,这个方法只能是在按钮有click这个动作,或者通过jquery有click()动作:$("#demoid").click(function(){demoFunction()});

7、如果是自动加载即运行的,或者需要被监听的都需要放置到$(document).ready(function(){代码})的代码中

8、window.οnlοad=function(){代码}与$(function(){代码})的区别

·调用函数的用法不同:

window.onload = function(){代码};

$(function(){代码})

·调用函数的时间不同

window.load=function(){代码}:必须等待网页中所有的内容加载完毕(包括图片)才能执行,比如要运用上传等功能。

$(function(){代码}),等到网页中所有的DOM结构绘制完毕后就可以执行。

9、AJAX专题

·需要的jar包:commons-lang-2.5.jar、commons-lang3-3.1.jar、javassist-3.11.0.GA.jar

·前台js的写法:为了简化流程,写成页面加载即运行

$(document).ready(function(){

$.ajax({url : "testajax.do",// 请求地址

//timeout : 600000,//超时时间设置,单位毫秒

async : false,// 异步

cache : false,// 缓存

type : 'post',// 请求方式

data: {"name":"123"},//data: $('#formid').serialize(),//序列化表单-当触发一个form表单提交的ajax事件的时候,这个序列化方法自动将数据转化为json格式传递给后台

dataType : 'json',// 服务器返回的数据类型

success : function(msg) {// 请求成功后调用的

alert("返回json的实验成功了"+" msg.resultcode="+msg.resultcode+" msg.name="+msg.name);

},

error :function(){

alert("异常");

}

});

});

·struts.xml文件的写法<?xml version="1.0" encoding="UTF-8"?>

/p>

"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"

"http://struts.apache.org/dtds/struts-2.3.dtd">

message

/index.jsp

·后台java代码:仅距离调用ajax,故不涉及数据库操作import java.io.IOException;

import java.io.PrintWriter;

import java.util.HashMap;

import java.util.Map;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts2.ServletActionContext;

public class AjaxTest {

protected Map message = new HashMap();

/** AJAX请求返回RESULT的name常量*/

protected final static String MESSAGE = "message";

public Map getMessage() {

return message;

}

public void setMessage(Map message) {

this.message = message;

}

//-登录页面中form表单提交的路径

public String testajax() throws IOException{

System.out.println("获取参数name="+ServletActionContext.getRequest().getParameter("name"));

message.put("resultcode", "0000");

message.put("resultcode", "0001");

message.put("name", "zhong文ce试");

return MESSAGE;

}

}

·ajax的应用之提交form表单数据-表单数据自动转json格式

场景描述:当具体的提交信息为一个form表单,并通过ajax传递给后台时,我们通常使用一个叫序列化的方法将这个form表单转化为json格式传递给后台。(想看更多就到PHP中文网AJAX开发手册栏目中学习)

·form表单的格式,form标签有id,input标签有name

姓名:

年龄:

·js部分的代码-可以单独写在一个js文件,注意,需要先引入jquery.js文件$(document).ready(function(){

$("#submitid").click(function(){ajaxhere()});

});

//提交表单的ajax

function ajaxhere(){

$.ajax({

url : "testajax3.do",// 请求地址

//timeout : 600000,//超时时间设置,单位毫秒

async : false,// 异步

cache : false,// 缓存

type : 'post',// 请求方式

data: $('#formid').serialize(),//序列化表单

dataType : 'json',// 服务器返回的数据类型

//contentType:"application/x-www-form-urlencoded; charset=utf-8",

success : function(msg) {// 请求成功后调用的

alert("form表单触发的实验成功了"+" msg.resultcode"+msg.resultcode+" msg.name="+msg.name);

},

error :function(){

alert("异常");

}

});

};

·传统的ajax返回方式,即java部分的返回写在流里-特别要注意这里的处理中文乱码的解决方式

HttpServletResponse response = ServletActionContext.getResponse();

response.setCharacterEncoding("utf-8");

PrintWriter writer = response.getWriter();

String a = "{\"resultcode\":\"0000\",\"name\":\"文试\"}";

writer.write(a);

writer.flush();

writer.close();

本篇文章到这就结束了(想看更多就到PHP中文网AJAX使用手册栏目中学习),有问题的可以在下方留言提问。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值