如何使用空占位符文本

Posted

技术标签:

【中文标题】如何使用空占位符文本【英文标题】:How to use empty placeholder text 【发布时间】:2014-05-20 06:25:08 【问题描述】:

这个问题很清楚。我如何使用占位符中的文本,例如来自下面的文本。我一直在寻找这个并没有找到解决方案。我们将不胜感激。

<input type="text" placeholder="YYYY, MM - 1, DD" name="director_date"
 value="<?php print get_option('director_date');
 ?>" />

【问题讨论】:

使用是什么意思? @smistry 例如,如果没有在框中写入文本,则将使用占位符文本 这是自己发生的?您的意思是在提交表单时您希望占位符作为数据? 是的,这就是我想要的 @smistry 你能帮忙吗 【参考方案1】:

对于非 javascript 解决方案,您必须在表单提交时测试一个空字段。

<?php
if(empty($_REQUEST['director_date']))

    $dir_date = "YYYY, MM - 1, DD"; //Set desired date here.
 else 
    $dir_date = $_REQUEST['director_date'];

【讨论】:

感谢@TheGunner,这正是我所需要的 很高兴为您提供帮助。如果您认为答案是足够的,您应该考虑通过单击投票赞成/反对按钮附近的复选标记来接受它。【参考方案2】:

我的第一个想法是使用 javascript。但是,您应该使用 ajax 或其他方式将其发送到服务器。

function getMe()
  var input = document.getElementsByTagName('input');
  var final = [];
  for(var i = 0; i<input.length;i++)
  if(input[i] == '')
       final[input[i].name] = input[i].placeholder;
     else 
       final[input[i].name] = input[i].value;
    
  

【讨论】:

这是wordpress,所以我需要使用php。不过感谢您的帮助。在使用 ajax 时可能会派上用场。我已经给你投票了【参考方案3】:

使用您的“占位符”作为输入的默认值,然后输入一些 javascript 以清除焦点上的值并在为空时将其恢复为模糊。

&lt;input type="text" onfocus="if(this.value=='placeholder text') this.value='';" onblur="if(this.value=='') this.value='placeholder text';" value="placeholder text"&gt;

JSFiddle demo

【讨论】:

解决问题的更简单方法。谢谢@lafor 你能解释一下吗?我想使用上面的值。换句话说,回显、打印或控制台记录它【参考方案4】:

你可以这样做

$('form').submit(function()
    var input = $(this).find('input[name=box]');
    if(input.val() == "")
       input.val(input.attr('placeholder'));       
    ;
);

DEMO FIDDLE(忽略警报并返回 false):http://jsfiddle.net/TwY3E/

【讨论】:

以上是关于如何使用空占位符文本的主要内容,如果未能解决你的问题,请参考以下文章

如何使用左侧的占位符和右侧的编辑文本创建 UITextField?

如何在输入中仅使用占位符斜体

如何在占位符文本上启动光标位置中心反应原生?

如何在swift中使用Google Material MDCOutlinedTextField从文本字段中删除占位符文本?

将占位符添加到 UITextField,如何以编程方式快速设置占位符文本?

如何访问 XLFormRowDescriptor 的占位符文本颜色