【发布时间】:2017-01-09 16:36:27
【问题描述】:
<input type="text" list="req" name="req" style="width:350px; height:70px;"><datalist id="req">
<option value=""><option>
<?php while($getreq = $requirements->fetch_array()){ ?>
<option><?=$req = preg_replace("/\r\n|\r|\n/",'<br/>',$getreq['req']);?></option>
<?php } ?>
</datalist>
我从数据库中得到这个查询,有 50 行,有些行的文本有断线。但问题是当我检查数据列表时,断线不起作用。
例如:
No1 - 中心构件的可见断裂。2 - 中心构件分离。3 - 1 分钟内失去气压。
但在我的数据库中是这样的。
No
1 - 中心构件的可见断裂。
2 - 中心构件分离。
3 - 1 分钟内失去气压。
知道如何解决我的问题吗?
Database
ID Req
1 Bead Unseating Test Min. 9100 N
2 Breaking Energy Test Min. 113 N.m. (J)
3 No<br/>1 - Visible Fracture(s) of the center member.<br/>2 - The center member separates.<br/>3 - Loses air pressure in 1 minute.
Must be Output in datalist or Select Option (Dropdown Menu)
Bead Unseating Test Min. 9100 N
Breaking Energy Test Min. 113 N.m. (J)
No
1 - Visible Fracture(s) of the center member.
2 - The center member separates.
3 - Loses air pressure in 1 minute.
【问题讨论】:
-
nl2br() ? php.net/manual/en/function.nl2br.php ...虽然不确定它是否会在
<option>中有所帮助 - 从未在<datalist>中尝试过,但通常 no 允许在<option>标签内使用其他标记。 -
它不起作用@CD001,所以我可以使用任何下拉列表来完成这项工作?
-
PHP 可能正在工作,查看源代码,但据我所知,您不能在
<option>标签内放置任何其他标记,包括<br />标签 - 所以这些标签可能是在源代码中,但他们什么也不做:stackoverflow.com/questions/3354979/… -
...我不知道这是否可行,但尝试将换行符保留原样,但将
pre样式应用于选项,例如<option style="white-space: pre;"><?= strip_tags($getreq['req']); ?></option> -
是的,似乎
在 Select Option 和 Datalist 中不起作用。我不知道如何使它工作。很遗憾