ajax使用总结-ajax的配置-ajax的调用-ajax的中文乱码-ajax的表单提交
·jquery的使用
0、必须优先引入jquery.js 否则无法调用jquery框架
1、js区分大小写,起名字的时候要注意
2、jquery根据div的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"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd">
<struts>
<!--略去一些struts2的配置信息-->
<package name="myajax" extends="json-default" namespace="/">
<global-results>
<result name="message" type="json">
<param name="root">message</param>
</result>
</global-results>
<action name="*" class="demo.action.AjaxTest" method="{1}">
<result name="list">/index.jsp</result>
</action>
</package>
<!-- 包含的其他配置文件 -->
<include file="struts-method.xml"></include>
</struts>
·后台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<String, Object> message = new HashMap<String, Object>();
/** AJAX请求返回RESULT的name常量*/
protected final static String MESSAGE = "message";
public Map<String, Object> getMessage() {
return message;
}
public void setMessage(Map<String, Object> 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格式传递给后台。
·form表单的格式,form标签有id,input标签有name
<form id="formid">
姓名:<input type="text" name="name" value="张三"/><br>
年龄:<input type="text" name="age" value="12"/><br>
<input type="submit" value="提交" id="submitid"/>
</form>
·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();
ajax使用总结-ajax的配置-ajax的调用-ajax的中文乱码-ajax的表单提交相关推荐
- Ajax提交与传统表单提交的区别说明
Ajax提交是通过js来提交请求,请求与响应均由js引擎来处理,页面不会刷新,用户感觉不到实际上浏览器发出了请求.比如说我们希望网页总是显示最新的新闻,而又不想老是去点刷新按钮,我们就可以用Ajax机 ...
- 详细叙述ajax的详情,ajax的配置详情、ajax的调用解释、ajax的中文乱码和ajax的表单提交(内有实例)...
本篇文章主要的讲述了关于ajax的使用总结说明,还有ajax的配置.调用.中文乱码.表单提交等等详细解释,现在我们一起来看这篇文章吧 ·jquery的使用 0.必须优先引入jquery.js 否则无法 ...
- 使用HTML5 FormData轻松完成Ajax表单提交
在我们的日常开发中,经常都会用到Ajax来提交表单.让我们来看一个典型的例子: <form id="myform" action="webservice.php&q ...
- ajax 模拟表单提交,Ajax模拟Form表单提交,含多种数据上传
---恢复内容开始--- Ajax提交表单.使用FormData提交表单数据和上传的文件(这里的后台使用C#获取,你可以使用Java一样获取) 有时候前台的数据提交到后台,不想使用form表单上传,希 ...
- springmvc ajax form表单提交出现400报错
此为转载:确实很不错,最下有原文的传送门 springmvc form表单提交报400错误,出现400错误的原因及解决方法: 原因: 在SpringMVC中的Action中处理前台ajax请求传过来的 ...
- ajax表单提交excel,ajax使用formdata 提交excel文件表单到rails解析
.modal-body .container-fluid .row .col-md-12 1.下载模板文件 = link_to '模板文件' .row .col-md-12 = form_tag '' ...
- 表单ajax提交插件,jQuery Form 表单提交插件-----ajaxSubmit() 的应用
Form Plugin API 里提供了很多有用的方法可以让你轻松的处理表单里的数据和表单的提交过程. 测试环境:部署到Tomcat中的web项目. 一.ajaxSubmit() 介绍 立即通过AJA ...
- layui表单提交使用form.on(‘submit(sub)‘,function (){}) 使用ajax请求时回调不执行的原因及解决方法
layui表单提交使用form.on('submit(sub)',function (){}) 使用ajax请求时回调不执行的原因及解决方法 参考文章: (1)layui表单提交使用form.on(' ...
- MVC下HtmlHelper自带BeginForm表单提交与异步Ajax请求
假如有一个数据表格UserInfo: public class UserInfo {public int Id { get; set; }public string Name { get; set; ...
最新文章
- 一个鼠标类( Using C# and Win32API)
- P、NP、NPC问题最通俗的讲解
- python接口自动化5-Json数据处理
- Android.mk 用法介绍
- matlab绘制二元一次函数图像_【八上数学】 一次函数必考知识点(下)
- java的jsp要下载吗_jsp、java下载附件
- plsql查看用户权限_权限功能
- 小学奥数 7828 最大公约数与最小公倍数 python
- CentOS安装图文教程
- wp8对json的处理
- 【Flink】Flink 的 slotSharingGroup 有什么用
- 【学习笔记】斯坦福大学公开课(机器学习) 之生成学习算法:朴素贝叶斯
- 计算机网络(自顶向下方法)-应用层
- 2020年下半期第一次实训
- 什么是遥控灯开关:工作及其应用解析
- Android版疯狂填字第三关,iOS/安卓版《疯狂填字》答案攻略第三十八关
- 2021 buaa 计组上机P3和P4 单周期CPU 3道课上考试题
- 听说你想用开发者工具调试我的网站?挺可以的啊。25
- python 计算牛顿差商,计算并化简牛顿插值多项式
- 基于Linux的嵌入式网络视频监控系统研究与设计
热门文章
- “长光卫星”已完成2.5亿元天使轮融资,已是全国规模最大的民营商业卫星公司...
- 读书笔记: Cartesian Impedance Control of Redundant and Flexible-Joint Robots, Section 2
- 【深度长文】一篇被投资圈内部转疯了的文章
- 猜测:秦始皇陵中有惊人的秘密
- c语言图形学画扇形代码,WPF画图の利用Path画扇形(仅图形)(示例代码)
- 图形学画直线c语言,计算机图形学:3种画直线算法(转)
- date格式化输出 24小时 java_java - 将日期时间转换为24小时表单
- 软件项目测试的具体内容
- 关于《【校园招聘】被南瑞集团坑了。。。》的补充说明和思考20121128
- 2013终端五大趋势