gpt4 book ai didi

grails - 单选 is producing more than one "selected" item by default

转载 作者:行者123 更新时间:2023-12-02 07:02:37 24 4
gpt4 key购买 nike

我有一个<g:select>在我的一份 GSP 中,如下所示:

<g:select id="location" name="criteria.location" from="${example.Location.list()}" optionKey="id" required="" value="1" class="many-to-one"/>

预期的结果应该是这样的,对吧?

预期结果:

<select id="location" name="criteria.location" required="" class="many-to-one" >
<option value="1" selected="selected" >1st Location Name</option>
<option value="2" >2nd Location Name</option>
<option value="3" >3rd Location Name</option>
<!-- entries omitted -->
<option value="49" >49th Location Name</option>
<option value="50" >50th Location Name</option>
</select>

但是我能得到什么?我最终选择了两个个项目。第 49 个选项也被选中,我无法想象为什么!我的代码中绝对没有提及值“49”...

实际结果:

<select id="location" name="criteria.location" required="" class="many-to-one" >
<option value="1" selected="selected" >1st Location Name</option>
<option value="2" >2nd Location Name</option>
<option value="3" >3rd Location Name</option>
<!-- entries omitted -->
<option value="49" selected="selected" >49th Location Name</option>
<option value="50" >50th Location Name</option>
</select>

如果我更改value在我的<g:select>例如,以“3”为例,第三个选项会被选中,但无论出于何种原因,第 49 项仍然会被选中。

编辑:如果我更改value,那就更奇怪了属性值大于 49,选择有效,并且仅选择第 n 个选项!

更新:我发布了一个答案,详细说明了我如何使其工作,但我仍然不明白 <g:select> 的原始行为标签。

有人知道这里发生了什么吗?

<小时/>

Grails 版本:2.2.0

最佳答案

我知道我有点晚了,但我今天遇到了这个问题。首先,我相信这实际上是一个错误,不知道是否已报告,但可能与数据类型有关。
您的方法工作正常,但仅当我们不需要动态选择值时才有效。为此,只需将绑定(bind)值转换为整数(长整型,或您正在寻找的任何类型),如下所示:

<g:select id="location" name="criteria.location" from="${example.Location.list()}" optionKey="id" required="" value="${yourVarName as Integer}" class="many-to-one"/>

也可以在fieldValue之后使用。我希望它可以帮助某人,并回答您关于为什么会发生这种情况的问题。但事实上,它应该被报告为一个错误。

关于grails - 单选<g :select> is producing more than one "selected" item by default,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15543444/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com