javascript - 当只有一个元素时,字符串数组作为字符串传递到我的 Controller

标签 javascript arrays extjs groovy

当我在数组中有多个元素时,它会将一个数组传递到我的 Controller 中。但是,如果数组中只有一个元素,它将作为字符串而不是字符串数组传递给 Controller ​​。

javascript.js

var idArray = [];
idArray.push('testString');

Ext.Ajax.request({
  url: '/mark/fetch',
  params: {array: idArray}
});

ma​​rkController.groovy

def fetch = {
  def idArray = params.array
  idArray.each{
    print it
  }
}

因此,print it 会一次打印 testString 的每个字母,而不是整个字符串。

如何确保 idArray 始终作为数组传递到 Controller 中?

最佳答案

假设您在使用 params 时引用了 Grails Controller ,您可以尝试使用 params.list('array') 来代替。

解释了 params 的性质 here as Type Conversion .

关于javascript - 当只有一个元素时,字符串数组作为字符串传递到我的 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18644806/

相关文章:

javascript - 将动态 JSON 中的所有小数四舍五入至小数点后 2 位

javascript - 更改标线标签的颜色

javascript - 仅滚动背景模糊

arrays - 为什么@($null) 是$false,而@($null, $null) 是$true?

php - 根据列值对子数组进行分组

javascript - Extjs滚动到tabPanel内的位置

javascript - 用反斜杠替换所有未转义的字符匹配

java - 下面的: arrayName[x]++; work and what does it output in the following context?怎么办

javascript - Extjs 3.4 删除记录后重新加载网格

javascript - 从我的 map 更改样式