如何在 select 中设置默认值而不在列表中重复
How can I set default value in select without duplicate in list
我的网页中有 select
控件:
<select class="form-control" name="user">
<#list sbUsers as sbUser>
<option value="${sbUser.login}">${sbUser.login}</option>
</#list>
</select>
但我需要像默认值一样设置当前用户。当前用户包含在此列表和其他变量中。我试过这个:
<select class="form-control" name="user">
<option value="${userName}" selected >${userName}</option>
<#list sbUsers as sbUser>
<option value="${sbUser.login}">${sbUser.login}</option>
</#list>
</select>
但是这个实现不起作用。当我打开我的网页时,我有当前用户喜欢默认值,但在列表值中这个用户也包含。
userCurrent(default)
-user1
-user2
-user3
-userCurrent
-user4
但我需要
userCurrent(default)
-user1
-user2
-user3
-user4
通过 JS 实现
$('#mySelector').children('option[value="'Value'"]').hide();
如前所述,您可以使用 if
<select>
<option value="${userName}" selected>${userName}</option>
<#list sbUsers as sbUser>
<#if userName != sbUser.login>
<option value="${sbUser.login}">${sbUser.login}</option>
</#if>
</#list>
</select>
或者如果默认值不必在列表中排在第一位:
<select>
<#list sbUsers as sbUser>
<option value="${sbUser.login}" <#if userName==sbUser.login>selected</#if>>${sbUser.login}</option>
</#list>
</select>
<select class="form-control" name="user">
<option value="">All</option>
<#list sbUsers as sbUser>
<#if sbUser.login == userName>
<option value="${sbUser.login}" selected>${sbUser.login}</option>
<#else>
<option value="${sbUser.login}">${sbUser.login}</option>
</#if>
</#list>
</select>
我的网页中有 select
控件:
<select class="form-control" name="user">
<#list sbUsers as sbUser>
<option value="${sbUser.login}">${sbUser.login}</option>
</#list>
</select>
但我需要像默认值一样设置当前用户。当前用户包含在此列表和其他变量中。我试过这个:
<select class="form-control" name="user">
<option value="${userName}" selected >${userName}</option>
<#list sbUsers as sbUser>
<option value="${sbUser.login}">${sbUser.login}</option>
</#list>
</select>
但是这个实现不起作用。当我打开我的网页时,我有当前用户喜欢默认值,但在列表值中这个用户也包含。
userCurrent(default)
-user1
-user2
-user3
-userCurrent
-user4
但我需要
userCurrent(default)
-user1
-user2
-user3
-user4
通过 JS 实现
$('#mySelector').children('option[value="'Value'"]').hide();
如前所述,您可以使用 if
<select>
<option value="${userName}" selected>${userName}</option>
<#list sbUsers as sbUser>
<#if userName != sbUser.login>
<option value="${sbUser.login}">${sbUser.login}</option>
</#if>
</#list>
</select>
或者如果默认值不必在列表中排在第一位:
<select>
<#list sbUsers as sbUser>
<option value="${sbUser.login}" <#if userName==sbUser.login>selected</#if>>${sbUser.login}</option>
</#list>
</select>
<select class="form-control" name="user">
<option value="">All</option>
<#list sbUsers as sbUser>
<#if sbUser.login == userName>
<option value="${sbUser.login}" selected>${sbUser.login}</option>
<#else>
<option value="${sbUser.login}">${sbUser.login}</option>
</#if>
</#list>
</select>