为什么我的HTML文本区域中有空白,而我的文本区域中有占位符?
在WordPress中,我有自定义表单,下面是为什么我的HTML文本区域中有空白,而我的文本区域中有占位符?,html,wordpress,css,Html,Wordpress,Css,在WordPress中,我有自定义表单,下面是文本区域: <textarea type="text" name="text" rows="4" placeholder="message here"><?php echo esc_textarea($_POST['text']); ?></textarea> 但是,textarea在浏览器中显示空白。 通过在文本区域内选择并删除空格来清除文本区域后,它将显示占位符文本 附加图像:您在$\u POST['te
文本区域
:
<textarea type="text" name="text" rows="4" placeholder="message here"><?php echo esc_textarea($_POST['text']); ?></textarea>
但是,textarea
在浏览器中显示空白。
通过在文本区域内选择并删除空格来清除文本区域后,它将显示占位符
文本
附加图像:您在$\u POST['text']
中有什么内容?你应该确定,那真的是空的
也许最好使用:
<textarea type="text" name="text" rows="4" placeholder="message here">
<?php if (isset($_POST['text']) && !empty($_POST['text'])) {
echo $_POST['text'];
}; ?>
</textarea>
为什么我的HTML文本区域中有空白,而我的文本区域中有占位符
因为esc_textarea($\u POST['text'])
的返回值不是空字符串
通过在文本区域内选择并删除空白来清除文本区域后,将显示占位符文本
空格、新行和其他空白都是数据。它们算作一种价值
如果有值,则会显示该值。仅当没有值时才会显示占位符
正如您所发现的,删除该值将导致显示占位符。使用以下方法:
<textarea type="text" name="text" rows="4" placeholder="message here"><?php echo trim(esc_textarea($_POST['text'])); ?></textarea>
尝试过之后,仍然遇到同样的问题。有趣的是,这只发生在FireFox中。尝试过Opera&IE,此问题不存在。我已测试过删除
,但此问题仍然存在。此问题仅在FF中存在。Opera、Edge和IE都很好。@theKing-我无法重现你描述的问题:我同意;但这很奇怪。