HTML-datalist-1.1

探讨了在不同浏览器如Firefox、Google Chrome和IE中使用HTML5 datalist元素的差异,包括显示行为、样式和响应性,以及如何根据用户输入动态生成下拉列表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    有时候select已经不能满足我们的需求了。

    有时候因为框架的原因,框架内的select会要求我们固定是下拉框的选项。但很多时候我们需要根据用户的选择,去数据库中查询我们的数据值,并返回前端,动态生成下拉框的内容。这时候在不影响系统的前提下,我们会选择动态生成datalist去动态展示数据。

    另一方面,select会一口气展示所有的选项,但我们希望根据用户输入的内容,选择性的展示选项,这时候我们也会使用datalist。

<!DOCTYPE HTML>
<html>
<body>
    <input list="data" />
    <datalist id="data">
    	<option value="11">aa</option>
    	<option value="12">bb</option>
    	<option value="13">cc</option>
    </datalist>
</body>
</html>

    首先我们需要一个input,给他绑定list属性,list值为datalist的id值。然后我们需要有一个datalist,并给予他一个id。而option和/option之内的值为展示的内容。

 

Firefox Google IE差异

    我一直以为各个浏览器对于datalist差异只存在于样式上,结果差异还是有很多的。下面用几个例子来说明。

 

    例子1

<input type="text" id="field9877" list="field9877_1">
<datalist id="field9877_1">
	<option value="1"></option>
	<option value="12"></option>
	<option value="2"></option>
</datalist>
 googlefirefoxIE
单击获得焦点展示所有值能展示所有当前值没反应,不会展示当前值同谷歌的效果
双击获得焦点展示所有值能展示所有当前值同谷歌的效果同谷歌的效果
有值包含此值的选项能展示包含此值的选项同谷歌的效果同谷歌的效果
删除值后无效果无效果同谷歌的效果展示所有值展示所有值
删除值后再单击展示所有值能展示所有当前值同谷歌的效果同谷歌的效果

 

    例子2

<input type="text" id="field9877" list="field9877_1">
<datalist id="field9877_1">
	<option>1</option>
	<option>12</option>
	<option>2</option>
</datalist>

    差异同上

 

    例子3

<input type="text" id="field9877" list="field9877_1">
<datalist id="field9877_1">
	<option value="1">AA</option>
	<option value="12">BB</option>
	<option value="2">CC</option>
	<option value="A">DD</option>
</datalist>
 googlefirefoxIE
样式value和内容可以同时展示value和内容内容只能展示内容内容只能展示内容
输入值值和内容中查出能从值和内容中查出查出内容只能查出内容查出值只能查出值
单击选值后展示值展示值展示值

 

    例子4

 googlefirefoxIE
样式value和内容不一定等宽内容等宽内容接近等宽

 

    通过以上几部分的对比,你们看出差异了么。使用的时候要小心哦。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值