option里面不能用<c:if></c:if>标签
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了option里面不能用<c:if></c:if>标签相关的知识,希望对你有一定的参考价值。
<option value="1" <c:if test="$param.categoryId==1">selected="selected"</c:if> >国内</option>
参考技术A 双引号的问题把,双引号和单引号换着用 参考技术B 你试一下:<option value="1" <c:if test="$param.categoryId eq '1'">selected="selected"</c:if> >国内</option> 参考技术C 当然不能用啊。你这样写他不认识。本回答被提问者采纳默认选择选项为空白
我有一个非常奇怪的要求,其中我要求在HTML的下拉菜单中默认选择没有选项。然而,
我不能用这个,
<select>
<option></option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
因为,为此,我将不得不进行验证来处理第一个选项。任何人都可以帮助我实现这个目标而不包括第一个选项作为select标签的一部分吗?
也许这会有所帮助
<select>
<option disabled selected value> -- select an option -- </option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
-- select an option --
默认显示。但如果您选择一个选项,您将无法选择它。
你也可以通过添加一个空的option
来隐藏它
<option style="display:none">
所以它不再出现在列表中了。
选项2
如果您不想编写CSS并期望上述解决方案的行为相同,只需使用:
<option hidden disabled selected value> -- select an option -- </option>
我发现它真的很有趣,因为我不久前经历过同样的事情。但是,我在互联网上找到了一个关于此问题的解决方案的例子。
没有任何进一步的麻烦,请参阅下面的代码片段:
<select>
<option value data-isdefault="true">--Choose one Option--</option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
有了它,它将保持不可提交但可随时选择。更方便用户界面,非常适合用户体验。
那就是全部,我希望它有所帮助。干杯!
为了显示,请在下拉列表中选择一个值,并在选择一些值后隐藏它。请使用以下代码。
它还将支持所需的验证。
<select class="form-control" required>
<option disabled selected value style="display:none;">--Please select a value</option>
<option >Data 1</option>
<option >Data 2</option>
<option >Data 3</option>
</select>
只是一个小小的评论:
某些Safari浏览器似乎既不尊重“隐藏”属性,也不尊重样式设置“display:none”(在MacOS 10.12.6下使用Safari 12.1进行测试)。如果没有明确的占位符文本,这些浏览器只会在选项列表中显示空的第一行。因此,始终为此“虚拟”条目提供一些解释性文本可能很有用:
<option hidden disabled selected value>(select an option)</option>
由于“禁用”属性,无论如何都不会主动选择它。
试试这个:
<h2>Favorite color</h2>
<select name="color">
<option value=""></option>
<option>Pink</option>
<option>Red</option>
<option>Blue</option>
</select>
下拉列表中的第一个选项是空白。
这应该有所帮助:
https://www.w3schools.com/tags/att_select_required.asp
<form>
<select required>
<option value="">None</option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
<button type="submit">Submit</button>
</form>
试试这个:
<select>
<option value="">
<option>Option 1
<option>Option 2
<option>Option 3
</select>
在HTML5中验证。在select元素中使用required
属性。可以重新选择。适用于Google Chrome 45,Internet Explorer 11,Edge,Firefox 41。
您可以使用Javascript来实现此目的。请尝试以下代码:
HTML
<select id="myDropdown">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
JS
document.getElementById("myDropdown").selectedIndex = -1;
或者JQuery
$("#myDropdown").prop("selectedIndex", -1);
Today (2015-02-25)
这是有效的HTML5并向服务器发送空白(不是空格):
<option label=" "></option>
已验证http://validator.w3.org/check的有效性
Win7验证行为(IE11 IE10 IE9 IE8 FF35 Safari5.1)Ubuntu14.10(Chrome40,FF35)OSX_Yosemite(Safari8,Chrome40)Android(Samsung-Galaxy-S5)
以下内容今天也通过了验证,但是服务器也从大多数浏览器中传递了某种空间字符(可能不太理想),而其他浏览器则传递空白(Chrome40 / Linux传递空白):
<option> </option>
Previously (2013-08-02)
根据我的说明,上面显示的选项标签内的非破坏空间实体在2013年产生了以下错误:
错误:W3C标记Validaton服务(公共):具有必需属性且没有多属性且大小为1的select元素的第一个子选项元素必须具有空值属性,或者必须没有文本内容。
那时,常规空间是有效的XHTML4,并从每个浏览器向服务器发送一个空白(不是空格):
<option> </option>
Future
如果规范更新为明确允许空白选项,那将使我的心情高兴。最好使用最简洁的语法。以下任何一种都很棒:
<option />
<option></option>
Test File
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Test</title>
</head>
<body>
<form action="index.html" method="post">
<select name="sel">
<option label=" "></option>
</select>
</form>
</body>
</html>
<td><b>Ação da atividade:</b><br>
<select style='align:left; width:100%;' id='cbxTipoSFA' name='cbxTipoSFA'>
<option hidden selected>Selecione uma opção</option>
<option value='Instalação'>Instalação</option>
<option value='Solicitação'>Solicitação</option>
<option value='Retirada'>Retirada</option></select>
</td>
仅使用CSS工作的解决方案:
答:内联CSS
<select>
<option style="display:none;"></option>
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
<select required>
<option value="" disabled selected>None</option>
<option value="volvo">Volvo</option>
<option value="saab">Saab</option>
<option value="mercedes">Mercedes</option>
<option value="audi">Audi</option>
</select>
在这种情况下,您可以避免自定义验证。
没有HTML解决方案。根据HTML 4.01规范,如果没有option
元素没有selected
属性,浏览器行为是未定义的,并且实际上浏览器做的是它们预先选择了第一个选项。
作为一种解决方法,您可以用一组select
元素(具有相同的input type=radio
属性)替换name
元素。这创建了具有不同外观和用户界面的相同类型的控件。如果input type=radio
元素都没有checked
属性,则在大多数现代浏览器中最初都没有选择它们。
我正在使用Laravel 5框架,而@Gambi的答案也适用于我,但我的项目有一些变化。
我在数据库表中有选项值,我将它们与foreach语句一起使用。但在声明之前,我已经添加了一个带有@Gambit建议设置的选项,并且它有效。
这是我的例子:
@isset($keys)
<select>
<option disabled selected value></option>
@以上是关于option里面不能用<c:if></c:if>标签的主要内容,如果未能解决你的问题,请参考以下文章
jquery如何获取一个select里面的所有option的值呢?