【问题标题】:Grails dealing checkbox without GSP没有 GSP 的 Grails 交易复选框
【发布时间】:2014-03-13 14:17:06
【问题描述】:

我没有使用GSP 文件,我的params.data 上出现空值,以JSON 的身份返回我的应用程序。我的问题出在 grails 或 javascript 上?

javascript

var data = $('input:checkbox[name=grid-checkbox]:checked').map(function() { return $(this).val(); }).toArray();
$.ajax({
    type: "GET",
    data: data,
    crossdomain: true,
    url: "http://..../food",
    success: success,
    error: fail
});

grails

def food() {
    def result = []
    def checkbox = params.data
    def b
    println params.data //null
    checkbox.each {
        b = Food.findAllById(checkbox.it).collect { Food food ->
            result << [id: food.id,
                    foodType: food.foodType
            ]
        }
    }
    return formatAndRender("JSON", params.callback, result)
}

【问题讨论】:

  • 看起来是您的 jQuery 的问题。在您的 ajax 调用中尝试 data { data: data }。
  • 我会尽快上网查看
  • 小心,我有一个小错字,应该是 data: {data: data}
  • 从我的警报中它给了我(选中)2,3,4 但在 params.data 上仍然为空

标签: jquery ajax grails checkbox gsp


【解决方案1】:

您的数据为空,因为 params 映射中不存在数据键。

data: data 应该是一个有效的键值对,比如

data: "data=" + data

【讨论】:

  • 我会尽快上网查看
  • 从我的警报中它给了我(选中)2,3,4,但在 params.data 上仍然为空
  • 它会迭代所有内容,甚至是,。有没有比我的if(it != ",") ...更好的解决方案?
  • 试试params.data.split(',').each {
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多