java方法如下: public void attachDirtyForAclUnExtends(int accId, int modId, int[] permission,int[] yes) {
aclDao.attachDirtyForAclUnExtends(accId, modId, permission, yes);
}那么js怎么调用呢?
aclDao.attachDirtyForAclUnExtends(accId, modId, permission, yes);
}那么js怎么调用呢?
$("input[type='checkbox'][accSn]").click(
function(){
var per= new Array('0','1','2','3'); 试验了不行
var pow= new Array('1','1','1','1');
//var per= [0,1,2,3]; 试验了不行
//var pow= [1,1,1,1];
accountManager.attachDirtyForAclUnExtends(
${CAACLManageForm.accId},
$(this).attr("modId"),
per,
pow
);
}
)error popup---没有信息提示。但是进入/dwr/test/accountManager传递attachDirtyForAclUnExtends(0,0,[0,1,2,3],[1,1,1,1]) 居然成功了!
既然是int类型的数组,在javascript中为什么定义成字符形?
var per= new Array('0','1','2','3');
var pow= new Array('1','1','1','1');
而不是:
var per= new Array(0,1,2,3);
var pow= new Array(1,1,1,1);
var addvalues = [];
addvalues[0]=1;
addvalues [1]=2;
addvalues [3]=s;
function insert(addvalues) {
BaisWorkBean.insertNumber(addvalues, backInsert);
}
function backInsert(dataResult) {
alert(dataResult);
}
public String insertNumber(String[] addvalues) {
try{
String[] addValues = new String[addvalues.length];//js传来的数组,我把他当成字符数组是可以的
addValues = addvalues;
} catch (Exception e) {
insertResult = e.toString();
}finally{
return Result;
}}上面是我用JS传数组到BEAN里面,BEAN返回结果到JS中的过程,不知道能否帮上楼主。呵呵
var per= new Array(0,1,2,3);
var pow= new Array(1,1,1,1);
但是DWR会根据javascript的参数类型来判断调用哪个函数,你改成数值型试一下就知道可不可以了.
var per= new Array(0,1,2,3);
var pow= new Array(1,1,1,1);
var per= new Array('0','1','2','3'); 全部成功了,根本不是什么数据类型的问题。js是弱类型语言。
public boolean getData(long[] data){
//TODO
return true;
}需要怎么处理呢,怎么识别 long[]?