-
使用dwr,遍历一个二维数组,出现 'null'为空或不是对象错误?5
前台代码:
function init() {
aclManager.searchAclRecords(
"${aclActionForm.principalType}",
${aclActionForm.principalSn},
function(datas) {
for(var i = 0; i < datas.length; i++) {
var resourceSn = datas[i][0];
var dState = datas[i][1];
var uState = datas[i][2];
var rState = datas[i][3];
var cState = datas[i][4];
var extState = datas[i][5];
$(resourceSn + "_D").checked = dState == 0 ? false:true;
$(resourceSn + "_U").checked = uState == 0 ? false:true;
$(resourceSn + "_R").checked = rState == 0 ? false:true;
$(resourceSn + "_C").checked = cState == 0 ? false:true;
<c:if test="${user != null}">
$(resourceSn + "_EXT").checked = extState == 0 ? true:false;
</c:if>
$(resourceSn + "_USE").checked = true;
}
}
);
}
后台方法:
//根据主体类型和主体标识,得到该主体的所有模块的授权情况
public List searchAclRecords(String principalType, int principalSn) {
String sql = "select resourceSn, aclState&8, aclState&4, aclState&2,aclState&1, " + "aclTriState from t_acl where principalType= '" + principalType +
"' and principalSn = " + principalSn;
return getSession().createSQLQuery(sql).list();
}
后台方法经测试,返回的数据没有问题,dwr的配置也没有问题,之前已经用过几个方法问题,但是init()方法调用时就出现问题了,
这个是尚学堂的OA项目,做到这里问题解决不了,望高高手来指教!!??2009年3月13日 16:53
3个答案 按时间排序 按投票排序
-
public List searchAclRecords(String principalType, int principalSn) { String sql = "select resourceSn, aclState&8, aclState&4, aclState&2,aclState&1, " + "aclTriState from t_acl where principalType= '" + principalType + "' and principalSn = " + principalSn; return getSession().createSQLQuery(sql).list(); }
这个方法返回的是一个List集合,而这个List装置的是Map对象,不应该像楼主说的是个二维数组。
你前台的调用方法改为如下:for(var i = 0; i < datas.length; i++) { var resourceSn = datas[i].resourceSn; var dState = datas[i].aclState8; var uState = datas[i].aclState4; var rState = datas[i].aclState2; var cState = datas[i].aclState1; var extState = datas[i].aclTriState; }
2009年3月17日 11:06
-
可能是二维数组的问题,
你直接用
for(var prop in datas)
{
str + = prop +':'+datas[prop]+'\n';
}
alert(str);
调试看这个datas是不是你要的2009年3月16日 13:58
相关推荐
DWR会将这个列表转换为JavaScript数组,每个元素都是之前提到的`Person`对象的JavaScript表示。这样,你可以在前端遍历数组,展示用户信息。 使用DWR时,通常包括以下几个步骤: 1. **配置DWR**: 首先需要在Web...
在这个"DWR.rar_dwr"压缩包中,我们看到的是DWR在实际应用中的实例,涵盖了各种数据类型的处理,包括字符串、带参的字符串、数组、集合、Map以及循环Map和二维数组。 1. 字符串处理:在Web应用中,字符串是最基本的...
在这个例子中,`MyClass`的`getListOfObjects`方法返回一个List,DWR会自动将其转化为JavaScript数组供前端使用。 接着,我们来看看Map的转换。DWR可以将HashMap或其他Map实现转换为JavaScript的对象(Object)。...
例如,Java方法返回一个`List<JavaBean>`,DWR会将其转换为JavaScript数组,每个元素都是对应的JavaScript对象。你可以在JavaScript中使用`for`循环遍历并访问这些对象。 此外,DWR提供了错误处理、安全控制、缓存...
Direct Web Remoting (DWR) 是一种开源的Java库,它允许JavaScript在浏览器端与...这只是一个基础的使用案例,实际上DWR支持更复杂的交互,如异步调用、数据转换、错误处理等,为开发富互联网应用提供了强大的工具。
DWR如何获得返回对象 DWR如何获得返回对象 DWR如何获得返回对象
同时,我们还提供了一个错误处理函数,以处理可能出现的异常。 通过这种方式,DWR使得前端可以直接操作由服务器返回的对象,而无需关心底层的网络通信细节。这种方法提高了开发效率,简化了代码,同时也提供了更好...
DWR (Direct Web Remoting) 是一个开源的Java库,它允许JavaScript在浏览器端与服务器端的Java对象进行直接交互,实现动态Web应用。通过DWR,开发者可以在不刷新整个页面的情况下更新部分网页内容,提高了用户体验。...
当服务器端需要返回一个对象集合,例如List或Set时,DWR会将其转化为JavaScript数组。客户端可以通过遍历这个数组来处理每个对象,例如在表格或列表中显示这些数据。 在`t84DwrDemo`这个压缩包文件中,可能包含了...
DWR (Direct Web Remoting) 是一个开源的Ajax框架,它允许JavaScript与服务器端的Java代码进行交互,实现异步更新网页,无需刷新整个页面。DWR简化了客户端和服务器端之间的通信,使得Web应用更加动态和响应。下面将...
你可以遍历这个数组并在前端进行展示或操作。 4. **List和Map数据结构**: 这些是更灵活的数据结构,允许你存储不同类型的数据。List通常用于存储异构数据,而Map则提供键值对的存储方式。DWR同样能很好地处理这些...
标题中的“spring+dwr+Extjs+sql2008的数组传递grid”是指一个集成应用,使用了Spring框架、Direct Web Remoting (DWR)技术、ExtJS前端框架以及SQL Server 2008数据库,实现了从后端服务器向前端Grid组件传递数据的...
9. **实战项目**:“[浪曦原创]零散视频三 使用DWR开发AJAX For J2EE(JustCode).wrf”可能是一个实际操作视频,详细演示如何使用DWR构建一个简单的AJAX应用,通过观看可以加深对上述理论知识的理解。 10. **资源...
对于`testMethod4`,如果它返回一个JavaBean,DWR会自动将其转换为JavaScript对象。在JavaScript中,我们可以像操作普通JavaScript对象一样操作这个返回的对象。例如,如果JavaBean有一个`name`属性,我们可以通过`...
对于更复杂的结构,如嵌套的对象或数组,DWR也能很好地处理。只要服务器端的Java对象结构清晰,DWR就能将其映射为JavaScript的等效结构。 7. **错误处理**: 如果服务器端方法抛出异常,DWR会捕获它并以Error对象...
当服务器端方法返回一个Java集合(如ArrayList、LinkedList或HashSet)时,DWR会自动将其转换为JavaScript数组。这种自动转换简化了数据交换过程,使得前端可以直接操作这些数据,例如遍历、添加、删除等。在本案例...
- **AutoBean**: DWR提供了一种自动转换机制,可以将Java对象透明地转换为JavaScript对象。 4. **处理集合** - **List和Array**: DWR能够处理Java集合,如List和Array,将它们转换为JavaScript数组,方便在客户端...
3. **错误处理**:DWR调用的服务器端方法如果抛出异常,可以捕获并将异常信息返回给客户端,此时可以利用DWR的错误处理机制,而不是依赖JSP的`exception`内置对象。 4. **页面更新**:DWR可以更新客户端的HTML元素...
因此,可以通过循环遍历这个数组,并对每个JavaBean对象进行操作。 #### 四、总结 通过上述示例可以看出,在DWR中处理List、Set和Map等集合类型的关键在于正确配置DWR XML文件,并编写合适的客户端JavaScript代码来...
- 如果返回的ArrayList为空或未正确返回,则应在前端进行相应的错误处理。 #### 结论 通过上述步骤,我们可以有效地使用DWR调用Java类中的方法获取数据,并将返回的ArrayList数组赋值给前端的逻辑迭代器。这种...