【问题标题】:How to avoid extra parameters in grails (GSP page to Controller)如何避免 grails 中的额外参数(GSP 页面到控制器)
【发布时间】:2014-03-31 04:32:45
【问题描述】:

我是 grails 新手。在我的网络应用程序中,我有一个隐藏字段

<g:hiddenField name="tags" id="tags" value=""></g:hiddenField>

这个隐藏字段的值是在提交时设置的。

<input type="submit" class="btn btn-default" onclick="setTag()" value=""/>

setTag 方法定义为: 函数 setTag() { $("#tags").val(selectedTagList); }

selectedTagList 是一个 ID 列表。

当去控制器时,如果发送的值是 1,2,3 在控制器中,值达到 [1,2,3, , ]

如果是 a,b 则值为 [a,b, , ] 控制器中接收到两个额外的参数。 我怎样才能避免这个额外的参数。 ??

【问题讨论】:

    标签: grails grails-2.0 grails-controller


    【解决方案1】:

    我已经测试了你的情况。 这是一个相当奇怪的。通过获取 params 变量,控制器中有空值。 但是,它通常使用 TextField。 因此,我认为第一步,您应该尝试通过以下语句删除列表中的空值:

    def clean = list.findAll { item -> item != ''}
    

    【讨论】:

    • 在JQuery的第一行,selectedTagList的值设置为空白。每次加载此页面时, selectedTagList 值最初将为空。那接下来怎么办?
    • notEmpty() 方法不可用,但 isEmpty() 可以正常工作。但是额外的参数仍然存在。
    • 我用过这个:def clean = list.findAll { item -> item.notEmpty() } 但列表没有改变。我在哪里可以得到清理后的清单?
    猜你喜欢
    • 1970-01-01
    • 2019-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    • 1970-01-01
    • 2012-10-15
    • 1970-01-01
    相关资源
    最近更新 更多