这个应该是api上的说明有问题, 实际传输数组的过程确实是需要加上[]才行的, 不然的话"foo=bar1foo=bar2"这种形式的第一个值会被第二个值覆盖, 最终只传递了一个值, 加了[]服务器端才能正确的将imageid识别成数组, 并将多个值传递给数组
成都创新互联公司主营新丰网站建设的网络公司,主营网站建设方案,app软件开发,新丰h5小程序制作搭建,新丰网站营销推广欢迎新丰等地区企业咨询
我以前是这么做的:
var codes=[1,2,3];//定义数组
$.ajax({
type: "POST", //用POST方式传输
dataType: "json", //数据格式:JSON
url: ..., //目标地址
traditional: true,
data: {
codes:codes,
},
error: function (XMLHttpRequest, textStatus, errorThrown) {...},
success: function (msg){...}
});
注意traditional: true不能少,
后台String[] codes接收参数,然后遍历取值,
for(int m=0;mcodes.length;m++){
String code=codes[m];
...
}
创建数组使用 new Array()方法。
创建数组并赋值,简便写法如下:
var temp = ['java', 'php', 'c++', 'c#', 'perl', 'vb', 'html', 'css'];
1、创建一个变量名为temp的数组;
2、为数组赋值,数组下标是从0开始,所以从0依次存储;
3、从数组中取出值,通过for循环,依次取出。
4.代码如下:
var temp = new Array();
temp[0] = "hello";
temp[1] = "my";
temp[1] = "friend";
for(var i = 0; i temp.length; i++){
alert(temp[i]);
}
jQuery使用$.inArray(val,array)方法判断值是否存在于数组中;
解释:
确定第一个参数在数组中的位置, 从0开始计数(如果没有找到则返回 -1 ).
indexOf()返回字符串的首次出现位置,而$.inArray()返回的是传入参数在数组中的位置,同样的,如果找到的,返回的是一个大于或等于0 的值,若未找到则返回-1.现在;
参考如下:
var _exist=$.inArray('X',_mozi);
var _inexistence=$.inArray('T',_mozi)
if(_exist=0){
alert('X 存在于数组_mozi中,其在数组中索引值是: '+_exist);
}
if(_inexistence0){
alert('T 不存在于数组_mozi中!,返回值为: '+_inexistence+'!');
}