var xmlHttpRequest = null; //声明一个空对象以接收XMLHttpRequest对象
function ajaxSubmit()
{
//如果不为null 或者不为 Undefined 就为true
if(window.ActiveXObject) // IE浏览器,当初微软先在IE中非标准实现(ActiveX实现,ActiveX IE特有),后来其他浏览器用标准的方式实现
{
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest) //除IE外的其他浏览器实现,window下面存在XMLHttpRequest对象. window的子对象
{
xmlHttpRequest = new XMLHttpRequest();
}
if(null != xmlHttpRequest)
{
var v1 = document.getElementById("value1ID").value;
var v2 = document.getElementById("value2ID").value;
//POST/GET请求,最好大写,与表单提交不一样 请求路径 true:异步提交
xmlHttpRequest.open("POST", "ajax", true);//准备
//关联好ajax的回调函数
//xmlHttpRequest.onreadystatechange : 引用一个事件处理器
//点一下执行四次,因为状态变化四次
xmlHttpRequest.onreadystatechange = ajaxCallback;//回调,ajaxCallback:不能有括号:表示函数的引用,加了括号表示函数的执行
//真正向服务器端发送数据
//设置表单提交方式:"Content-Type","application/x-www-form-urlencoded"
xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttpRequest.send("v1=" + v1 + "&v2=" + v2);//POST提交要附加参数
}
}
function ajaxCallback()
{
if(xmlHttpRequest.readyState == 4)//1 2 3 4 四种状态
{
if(xmlHttpRequest.status == 200)//正常响应
{
var responseText = xmlHttpRequest.responseText;//服务器回传文本
document.getElementById("div1").innerHTML = responseText;
}
}
}
<input type="button" value="get content from server" onclick="ajaxSubmit();"><br>
<input type="text" name="value1" id="value1ID"><br>
<input type="text" name="value2" id="value2ID"><br>
<div id="div1"></div>
GET情况:
var xmlHttpRequest = null; //声明一个空对象以接收XMLHttpRequest对象
function ajaxSubmit()
{
//如果不为null 或者 Undefined 就为true
if(window.ActiveXObject) // IE浏览器,当初微软先在IE中非标准实现(ActiveX实现,ActiveX IE特有),后来其他浏览器用标准的方式实现
{
xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest) //除IE外的其他浏览器实现,window下面存在XMLHttpRequest对象. window的子对象
{
xmlHttpRequest = new XMLHttpRequest();
}
if(null != xmlHttpRequest)
{
//POST/GET请求,最好大写,与表单提交不一样 请求路径 true:异步提交
xmlHttpRequest.open("GET", "ajax", true);//准备
//关联好ajax的回调函数
//xmlHttpRequest.onreadystatechange : 引用一个事件处理器
//点一下执行四次,因为状态变化四次
xmlHttpRequest.onreadystatechange = ajaxCallback;//回调,ajaxCallback:不能有括号:表示函数的引用,加了括号表示函数的执行
//真正向服务器端发送数据
xmlHttpRequest.setRequestHeader("pragma","no-cache");
xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
xmlHttpRequest.send(null);//如果GET请求 则不用附加参数
}
}
function ajaxCallback()
{
if(xmlHttpRequest.readyState == 4)//1 2 3 4 四种状态
{
if(xmlHttpRequest.status == 200)//正常响应
{
var responseText = xmlHttpRequest.responseText;//服务器回传文本
document.getElementById("div1").innerHTML = responseText;
}
}
}
<input type="button" value="get content from server" onclick="ajaxSubmit();"><br>
<input type="text" name="value1" id="value1ID"><br>
<input type="text" name="value2" id="value2ID"><br>
<div id="div1"></div>
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
PrintWriter out = resp.getWriter();
out.print("HELLO FROM SERVER,GET 提交");
out.flush();
out.close();
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
process(req, resp);
}
private void process(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
String v1 = req.getParameter("v1");
String v2 = req.getParameter("v2");
System.out.println("v1=" + v1 + ", v2=" + v2);
String v3 = String.valueOf(Integer.valueOf(v1) + Integer.valueOf(v2));
PrintWriter out = resp.getWriter();
resp.setHeader("pragma", "no-cache");
resp.setHeader("cache-control", "no-cache");
out.println(v3);
out.flush();
out.close();
}
分享到:
相关推荐
之前是用 txt 文件模拟的 AJAX 服务器, 现在用 jar 包模拟原生 JS 的 AJAX 服务器。 打开 CMD,在对应目录下运行 java -jar ajax_server.jar 输入地址:http://localhost:8080/check?username=123 测试一下服务器...
js原生AJAX封装函数代码,助你有效开发网站
模仿JQ的ajax操作,封装原生ajax
jQuery中Ajax和原生js实现Ajax的关系
后端(如 springboot)直接返回excel的输出流到前端,前端使用 该方法(js原生ajax)进行接收并实现页面的下载
本代码是原生ajax使用demo,详情请查看博客 原生Ajax使用笔记
纯js封装原生ajax,XMLHttpRequest/ActiveXObject对象封装
原生ajax库,实现jsonp跨域,短小精悍。
Java面试题41.jQuery中Ajax和原生js实现Ajax的关系.mp4
本函数封装了js的ajax,php为处理后台数据,仅支持post,代码很简洁
原生ajax+servlet实现智能提示框
javascript原生ajax写法分享_.docx
原生ajax模拟判断用户名是否已注册,具体内容详参照博客 原生ajax使用笔记(二)- - -post方法传参 中的内容
原生javascript实现ajax发送pos请求,这样可以脱离jquery框架,
遇到一个问题需要用原生ajax传值
原生ajax代码实现异步提交,用传统的ajax实现异步提交判断用户名是否存在,详细和完整的步骤,可运行
原生JavaScript实现Ajax的方法_.docx
Js原生ajax与跨域(代理)上传文件:JS原生模拟ajax请求与实现ajax跨域代理上传文件和jquery跨域上传文件Dome
ajax使用例子,包括“ajax_xml运用.doc”文档一份,eclipse开发的例子一套。