java和Ajax异步传输

本文介绍使用Java和Ajax实现异步数据传输的方法。通过Prototype.js进行Ajax请求,并利用org.json.jar处理JSON数据。示例代码展示了如何创建用于传递状态码和消息的JSON对象,以及前端如何解析这些数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用java和Ajax做个异步传输

用到的东西:

1.prototype.js

2.org.json.jar

 

主要的类:

package com.shangyu.json;
import org.json.*;
 
public class AjaxMessageJson {
 
 private JSONObject json = new JSONObject();
 
 public void setMessage(String codeid, String message) {
  try {
   this.json.put("codeid", codeid);
   this.json.put("message", message);
   this.json.put("text", "");
  } catch (JSONException e) {
 
  }
 }
 
 public void setMessage(String codeid, String message, String text) {
  try {
   this.json.put("codeid", codeid);
   this.json.put("message", message);
   this.json.put("text", text);
  } catch (JSONException e) {
 
  }
 }
 
 public String getJsonString() {
  return this.json.toString();
 }
}

登录页面:

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<html>
  <head>
    <title>用户登录测试json返回数据格式</title>
    <script type="text/javascript" src="js/prototype.js"></script>
<script language="JavaScript" type="text/javascript">
<!--
  var flagSubmit = false ;
  function checkUserName() {
  //var contextPath = "<%=request.getContextPath()%>";
  //alert(contextPath);
  var url = "check_login_user.jsp";//校验入口
  var pars = "username=" + $('username').value;//参数
   var pars1 = "&pas=" + $('pas').value;//参数
   //组合参数
   pars+=pars1;
  //异步传值
  var myAjax = new Ajax.Request(url,{method: 'get', parameters: pars,onLoading:loading,onFailure:reportError,onComplete: done});
}
function loading()
{
 //alert('正在调用');
}
//此方法接收返回的值做分析
function done(val) {
 var valText = val.responseText;
alert(valText);
 var jsonMsgObj = new JsonMsgObj(valText);
 var message = jsonMsgObj.getMessage();
 alert(message);
}
function reportError(request)
{
  alert('Sorry. There was an error.');
}
</script>
  </head>
 
  <body>
<form action="" method="post" name="form1">
 用户名:<input type="text" name="username""/>新密码:<input type="text" name="pas" onchange="checkUserName()"/><br>
 <input type="button" name="button" value="发送" onclick="checkUserName()">
</form>
  </body>
</html>

 

附工程文件下载:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值