ExtJS4.1整合到SSH里有关json的相关配置问题

2 篇文章 0 订阅
    因为最近要写一个用ssh+extjs4.1+jasperReports的大学物理实验预约系统,所以最近一直在学extjs4.1(目前官方最新版),extjs4.1与以前4.0版本之前的有很大的变化,所以学起来会有一点小困难,但只要你勤与看官网的文档,就会感觉很简单。废话少说了,下面讲我在整合ssh时关于json的处理,我这时写的是有关省市区多级下拉框。

    首先写三个model(Province,City,Area)



public class Province {

	private String provinceValue;
	private String provinceName;

	public String getProvinceValue() {
		return provinceValue;
	}

	public void setProvinceValue(String provinceValue) {
		this.provinceValue = provinceValue;
	}

	public String getProvinceName() {
		return provinceName;
	}

	public void setProvinceName(String provinceName) {
		this.provinceName = provinceName;
	}
}
package com.physics.action.tools.china;


public class City {

	private String cityValue;

	private String cityName;

	public String getCityValue() {
		return cityValue;
	}

	public void setCityValue(String cityValue) {
		this.cityValue = cityValue;
	}

	public String getCityName() {
		return cityName;
	}

	public void setCityName(String cityName) {
		this.cityName = cityName;
	}
}


 

package com.physics.action.tools.china;

public class Area {
	
	private String areaValue;

	private String areaName;

	public String getAreaValue() {
		return areaValue;
	}

	public void setAreaValue(String areaValue) {
		this.areaValue = areaValue;
	}

	public String getAreaName() {
		return areaName;
	}

	public void setAreaName(String areaName) {
		this.areaName = areaName;
	}
}



我把我们国家的省市区的信息都放在xml文件里,所以在建一个xml解析文件

然后写action

配置action

<package name="china" extends="json-default" namespace="/">
		<action name="province" class="com.physics.action.tools.China" method="province">
			<result type="json"></result>
		</action>
		<action name="citys" class="com.physics.action.tools.China" method="citys">
			<result type="json"></result>
		</action>
		<action name="areas" class="com.physics.action.tools.China" method="areas">
			<result type="json"></result>
		</action>
	</package>


然后在js:

这里特别要注意

var store = Ext.create('Ext.data.Store', {
						model : 'province',
						proxy : {
							type : 'ajax',
							url : 'province.action',
							reader : {
								type : 'json',
								root : 'province'
							}
						},
						autoLoad : true,
						remoteSort : true
					});


对应的root和model,还有model里对于的value值,否则会不显示。

如果不显示可以使用简单的方法检查下,在网页里输入相应的action,看是否正确,然后再查找具体原因。

我把的我效果图也发一张上来吧!

有问题可以联系我:wu560130911@163.com

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ExtJS 6.6.0 中,你可以使用 `Ext.Ajax.request` 方法来发送 AJAX 请求并获取响应数据。这个方法接受一个配置对象,其中的 `success` 回调函数会在请求成功时被调用,传递响应对象作为参数。你可以在这个回调函数中获取到一般处理程序返回的 JSON 数据。 以下是一个示例代码: ```javascript Ext.Ajax.request({ url: 'your-handler-url', method: 'POST', params: { // 如果需要在请求中传递参数,可以在这指定 param1: 'value1', param2: 'value2' }, success: function(response) { // 响应成功时将执行这个回调函数 var json = Ext.decode(response.responseText); // 在这可以处理返回的 JSON 数据 console.log(json); }, failure: function(response) { // 响应失败时将执行这个回调函数 console.log('Request failed'); } }); ``` 在这个示例中,我们使用 `Ext.Ajax.request` 方法向服务器发送一个 POST 请求,并在请求中传递了两个参数。在请求成功时,`success` 回调函数会被调用,并将响应对象作为参数传递进来。我们可以使用 `response.responseText` 属性来获取到响应文本,然后使用 `Ext.decode` 方法将其解析成 JSON 对象。最后,我们可以在回调函数中处理返回的 JSON 数据。 需要注意的是,在使用 `Ext.Ajax.request` 方法发送 AJAX 请求时,需要确保服务器返回的响应数据是有效的 JSON 格式。否则,`Ext.decode` 方法将无法正确解析返回的数据。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值