`

dwr把JSON对象从界面带到后台处理

    博客分类:
  • dwr
阅读更多

1:在界面把数据封装成JSON字符窜: 格式如下:

 

     {"a":"1","b":"2","c":[{"d":"3","e":"4"},{"d":"3","e":"4"}]}

 

     界面js如下:

 

    

   //一个字符串数据
	function getJsons(){
		var zlf = checkCongfu("zhonglei");
		
		if(!zlf){
		return "";
		}
		var sfxm = document.getElementById("sfxm").value;
		
		if(sfxm==2){
			var fzxamt = document.getElementById("fzxamt").value;
			var zxel = document.getElementsByName("xnamt");	
			var ed = document.getElementById("namt").value;	
			var fpsum = 0;
			
			for(var i=0;i<zxel.length;i++){
				if(zxel[i].value!=""){
					fpsum = fpsum + parseFloat(getNum(zxel[i].value));
				}
			}
			fpsum = fpsum+parseFloat(getNum(fzxamt));
			if(parseFloat(getNum(ed))<fpsum){		
				alert("调整额度小于分配额度");
				return "";
			}
		}
	var mx = document.getElementsByName("dbxz");
			var namt = document.getElementById("namt");
			var allused = document.getElementById("usedamt");
		var danbao = document.getElementsByName("danbao");
		var zhonglei = document.getElementsByName("zhonglei");
		var odi = document.getElementById("oid");
		var appid = document.getElementById("appid");
		if(namt.value!=""){
		
		var r = new StringBuffer('{ \"namt\":\"');
		var tzsm = document.getElementById("othersVal");
		
 		r.append(parseFloat(getNum((namt.value)))*10000);
		r.append('\",\"oid\":\"');
		r.append(odi.value);
		r.append('\",\"tzsm\":\"');
		r.append((tzsm.value));
		r.append('\",\"cor\":\"');
		r.append('<%=cror%>');
		r.append('\",\"appid\":\"');
		r.append(appid.value);
		r.append('\",\"allused\":\"');	
		r.append(0);
		r.append("\"");
		if(sfxm==2){
		r.append(',\"mx\":');
		var tempr =new StringBuffer("[");
		
		
		var zhonglei = document.getElementsByName("zhonglei");
		//var jyed = parseFloat(getNum(document.getElementsByName("xnamt")))*10000;
		var jyed = document.getElementsByName("xnamt")
		var danbao = document.getElementsByName("danbao");
		var danbaosm = document.getElementsByName("xnwartcmt");
		var f = false;
		tempr.append('{\"zhonglei\":\"');
				tempr.append(100);
				tempr.append('\", \"xnamt\":\"');
				tempr.append(parseFloat(getNum(document.getElementById("fzxamt").value))*10000);
				tempr.append('\", \"usedamt\":\"');
				tempr.append(parseFloat(getNum(document.getElementById("fzxamt").a))*10000);
				tempr.append('\",\"danbao\":\"');
				tempr.append(danbao[0].value);
				tempr.append('\",\"danbaosm\":\"');
				tempr.append(document.getElementById("fzxnwartcmt").value);
				tempr.append('\"},');
		if(danbao[0].value==""){
					alert("请填写担保方式!");
					danbao[0].focus;
					return "";
				}	
				
		for(var i=0 ; i<mx.length;i++){
	
			//if(mx[i].checked==true || jyed[i].value!=""){
			//alert(jyed[i].value);
			if(jyed[i].value!=""){
				if(jyed[i].value==""){
					alert("请填写额度!");
					jyed[i].focus;
					return "";
				}	
				if(danbao[i+1].value==""){
					alert("请填写担保方式!");
					
					danbao[i+1].focus;
					return "";
				}	
				if(zhonglei[i].value==""){
					alert("请填写授信种类!");
					zhonglei[i].focus;
					return "";
				}
				tempr.append('{\"zhonglei\":\"');
				tempr.append(zhonglei[i].value);
				tempr.append('\", \"xnamt\":\"');
				tempr.append(parseFloat(getNum(jyed[i].value))*10000);
				tempr.append('\", \"usedamt\":\"');
				//if(jyed[i].a!=null && jyed[i].a!=""){
				//tempr.append(parseFloat(getNum(jyed[i].a))*10000);
				//}else{
				tempr.append(0);
				//}
				tempr.append('\",\"danbao\":\"');
				tempr.append(danbao[i+1].value);
				tempr.append('\",\"danbaosm\":\"');
		
				tempr.append(danbaosm[i].value);
				tempr.append('\"},');
				f = true;
			}else{
				//alert("请填写额度!");
					//jyed[i].focus;
					//return "";
			}
		}

			tempr =tempr.substringBetween(0,tempr.getLength()-1);

		tempr=tempr+"]";
	
		r.append(tempr);
        }
        r.append("}");
		
		
		return r;
		}else{
			return "";
		}
	}

 2:界面把JSON传到后台

     

 function dosave(){

 var r = getJsons();
 if(r!=""){
	document.getElementById("dos").disabled =true ;
	document.getElementById("dob").disabled = true ;
    cedit.saveFbcmcEditApp(r.toString(),chagexnAmt);	
  }
}

 3:后台接收JSON并处理:

 

  

	public String saveFbcmcEditApp(String app){
		String s ="";
		//String s = fbcmCeditAuditDao.saveFbcmcEditApp(app);
		JSONObject t= JSONObject.fromObject(app);
		String namt = t.getString("namt");
		String oid = t.getString("oid");
		String cor = t.getString("cor");
		String allused = t.getString("allused");
		//String mx = t.getString("mx");
	
		//this.getDaoFacade().getCommonDao().delete(object)
		FbcmCeditApp oidFbcmCeditApp = getDaoFacade().getFbcmCeditAuditDao().checkAmt(oid, namt);
		if(oidFbcmCeditApp==null){
			return ("调整金额小于占有金额");
		}
		if(oidFbcmCeditApp.getSuperclt()!=null){
			FbcmCeditApp apps =getDaoFacade().getFbcmCeditAuditDao().getFbcmCeditAppByCltno(oidFbcmCeditApp.getSuperclt());
			
			if(apps!=null && apps.getAmt().doubleValue() < Double.parseDouble(namt)){
				return ("调整金额大于上级可用额度");
			}
		}
		Set oset = oidFbcmCeditApp.getFbcmCrtappDetails();
		//页面要保存的明细
		if(oidFbcmCeditApp.getIsproject().equals(new Long(String.valueOf(Statics.P_NO)))){
		String mx = t.getString("mx");
		JSONArray ja= JSONArray.fromObject(mx);
		//Set mxs = new HashSet();
		for(int i =0 ; i<ja.size();i++){
			JSONObject tempmx = (JSONObject)ja.get(i);
			String zl =tempmx.getString("zhonglei");
			String ed =tempmx.getString("xnamt");
			Iterator iter =oset.iterator();
			while(iter.hasNext()){
			
				FbcmCrtappDetail fcd = (FbcmCrtappDetail)iter.next();
			
				if(fcd.getType().equals(zl)){
					if(fcd.getUsedamt()!=null &&!"".equals(fcd.getUsedamt())){
						System.out.println(fcd.getUsedamt().doubleValue() +"@@@"+Double.parseDouble(ed));
						if(fcd.getUsedamt().doubleValue() > Double.parseDouble(ed)){
							if("100".equals(zl)){
								return ("非专项调整金额小于占有金额");
							}else{
								String name =getDaoFacade().getFbcmCeditAuditDao().getSxName(zl);
								return (name+"调整金额小于占有金额");
							}
						}
					}
				}
			}
		}
		}
		//删除相关的调整的明细
		List ll = getDaoFacade().getFbcmCeditAuditDao().findSqsms(Long.valueOf(oid));
		if(ll!=null){
			for(int i=0; i<ll.size();i++){
				FbcmAppDetail ttt = (FbcmAppDetail)ll.get(i);
				this.getDaoFacade().getCommonDao().delete(ttt);
			}
		}
		//删除相关的调整的说明
		//List lll = getDaoFacade().getFbcmCeditAuditDao().findTzmx(Long.valueOf(oid));
		List lll = getDaoFacade().getFbcmCeditAuditDao().findTzmx(oidFbcmCeditApp.getOldid());
		if(lll!=null){
			for(int i=0; i<lll.size();i++){
				FbcmCrtappDetail ttt = (FbcmCrtappDetail)lll.get(i);
				this.getDaoFacade().getCommonDao().delete(ttt);
			}
		}
		////删除相关的调整
		List l = getDaoFacade().getFbcmCeditAuditDao().getEditAppByOldId(oidFbcmCeditApp.getOldid().toString());
		//getDaoFacade().getFbcmCeditAuditDao().deleteAuditEditApp(l);
		if(l!=null){
			for(int i=0; i<l.size();i++){
				FbcmCeditApp ttt = (FbcmCeditApp)l.get(i);
				this.getDaoFacade().getCommonDao().delete(ttt);
			}
		}
		//保存初始申请的调整系数。
		FbcmCeditApp yssx =(FbcmCeditApp)this.getDaoFacade().getCommonDao().findById(oidFbcmCeditApp.getOldid(), FbcmCeditApp.class);
		oidFbcmCeditApp.setLoadadjrate(yssx.getLoadadjrate());
		FbcmCeditApp temp = getDaoFacade().getFbcmCeditAuditDao().saveFbcmCeditApp(oidFbcmCeditApp, namt,allused, oid, cor, t);
		FbcmCeditApp ysq = getDaoFacade().getFbcmCeditAuditDao().getAppById(oidFbcmCeditApp.getOldid().toString());
		getDaoFacade().getFbcmCeditAuditDao().saveFbcmAppDetail(ysq, t);
		s="保存成功;"+temp.getId();
		return s;
	}

 

分享到:
评论

相关推荐

    dwr + json简单分页

    DWR提供了自动转换Java对象到JavaScript对象以及反向转换的功能,使得数据交换变得简单。 **DWR分页实现步骤:** 1. **配置DWR**:在Web应用的`WEB-INF`目录下创建`dwr.xml`配置文件,定义允许JavaScript调用的...

    dwr的使用返回json

    在处理JSON数据时,DWR提供了自动序列化和反序列化机制,将Java对象转换为JSON字符串,然后传递给客户端,客户端再将这些字符串解析成JavaScript对象。 要使用DWR返回JSON数据,首先需要在服务器端设置DWR配置。...

    不妨看看我用dwr和json完成简单分页-jsp dwr分页(mssqlserver2005)

    在本例中,服务器端通过DWR调用执行SQL查询后,会将结果集转化为JSON格式,然后发送到客户端。JavaScript可以轻易解析这些JSON数据,并用于动态更新页面上的分页内容。 对于分页功能,通常需要以下几个关键步骤: 1...

    DWR与界面开发 资料大全

    DWR(Direct Web Remoting)是一种Java技术,用于在Web应用程序中实现富客户端(Rich Internet Applications,RIA)的交互。...从基础配置到高级应用,全方位解析DWR的各种功能,帮助你成为一名出色的DWR开发者。

    dwr实例,从后台取数据显示

    在你提供的实例中,“dwr实例,从后台取数据显示”表明这是一个使用DWR从服务器获取数据并在前端展示的简单应用。 1. **DWR的工作原理**:DWR通过在服务器上设置一个代理,允许JavaScript调用Java方法,就像它们是...

    天气预报,城市select联动,dwr,json

    天气预报,城市select联动,dwr,json 全国各省名称: http://www.weather.com.cn/data/list3/city.xml 全国城市: http://www.weather.com.cn/data/city3jdata/china.html 获得各省城市清单: ...获得各市城市清单: ...

    dwr前后台交互

    5. **自动序列化和反序列化**:DWR自动处理Java对象到JavaScript对象的转换,简化了数据交换的复杂性。 ### DWR的基本工作流程 1. **配置**:在服务器端,我们需要配置DWR的`dwr.xml`文件,声明可被远程调用的Java...

    struts2+spring+hibernate+jquery+dwr+json

    标题 "struts2+spring+hibernate+jquery+dwr+json" 描述了一个集成的Web应用程序开发框架,其中包含了多个关键技术和库。这个框架旨在提高开发效率,提供灵活的数据管理,以及用户友好的前端交互。 1. Struts2:...

    dwr对象处理dwr对象处理dwr对象处理

    例如,`&lt;convert converter="bean" class="com.dwr.MyBean"/&gt;` 将允许DWR自动处理 `MyBean` 类型的对象。 6. **安全与优化**: - DWR的安全性依赖于其配置,应谨慎设置暴露给JavaScript的方法,避免敏感信息泄露。...

    DWR如何获得返回对象

    DWR如何获得返回对象 DWR如何获得返回对象 DWR如何获得返回对象

    MySQL,DWR,JSON,EXT 实现EditorGrid

    使用EXT的EditorGrid,实现前台页面对数据直接进行增删改查操作。...例子中使用了DWR和JSON.含MySQL数据库脚本,并已加入Log4j日志记录。本例详细讲解可以参见:http://www.cshopetech.com/showtopic-239.aspx

    DWR的技术分析与界面开发

    “DWR学习笔记”可能包含了逐步的学习教程,涵盖了从安装DWR到创建第一个实时Web应用的全过程。这些笔记可能会讲解如何在项目中集成DWR,如何编写Java端的服务,以及如何在HTML和JavaScript中调用这些服务。 “DWR...

    DWR与界面开发

    1. **自动类型转换**:DWR自动处理Java对象与JavaScript对象之间的类型转换,减少开发者的工作量。 2. **批量调用**:支持一次发送多个请求,提高性能。 3. **异步与同步调用**:提供异步和同步两种调用方式,满足...

    json jquery dwr 个人测试

    在服务器端,接收到的JSON数据会被解析为Java对象,这通常可以通过Java的JSON库如Jackson或Gson来完成。接着,这些Java对象可以被DWR框架识别并映射到相应的Java方法。DWR会处理所有网络通信的细节,使得开发者可以...

    dwr dwr项目 js 调用 java 后台 方法 js调用java后台方法 后台方法 异步

    DWR默认采用异步模式,这意味着JavaScript调用Java方法不会阻塞浏览器,而是立即返回,并在后台处理请求。当请求完成时,回调函数会被调用。 7. **安全性** DWR提供了多种安全措施,如CSRF保护、IP白名单等,以...

    dwr 前台调用后台的java类 hello

    3. **DWR库**:从DWR官网下载最新版本的DWR库,解压到项目中。 ### 三、创建Java类 首先,我们需要一个简单的Java类,该类包含一个返回"Hello, World!"的静态方法。例如: ```java public class HelloWorld { ...

    DWR与Jsp内置对象关系

    3. **错误处理**:DWR调用的服务器端方法如果抛出异常,可以捕获并将异常信息返回给客户端,此时可以利用DWR的错误处理机制,而不是依赖JSP的`exception`内置对象。 4. **页面更新**:DWR可以更新客户端的HTML元素...

    j2ee使用dwr进行后台交互

    DWR (Direct Web Remoting) 是一个开源Java库,它允许在Web应用程序中实现JavaScript与服务器端Java对象的直接交互,极大地简化了AJAX(Asynchronous JavaScript and XML)的使用。在J2EE环境中,DWR作为一个强大的...

Global site tag (gtag.js) - Google Analytics