表单文本字段默认在焦点上消失,用户输入保留在表单更正上

时间:2011-12-01 03:55:55

标签: php javascript jquery

好的,我有一个小巧的JQuery,我一直在努力。它将文本字段标题作为默认文本...以便允许我将该值用于其预期目的。在焦点上,标题消失并允许用户输入。在模糊时,它很有效......保持用户的输入。问题变成了我无法获得“价值”的事实!例如,当用户提交一个有错误的表单时,它会将它们返回到表单,即使我在“值”中有$ _POST变量以避免用户必须重新输入它,它仍然会“标题“文本输入的一部分。为避免混淆,用户的输入仍然处理得很好。 我只是试图让“值”作为默认文本,以防出现表单错误。

这个领域是这样的:

<input id="registerField" class="idleField" title="First Name" type="text" name="firstname" value="<?php if(isset($_POST['firstname'])){echo htmlentities($_POST['firstname']);}?>" />

继承人JQuery:

$("input[type=text][title]").each(function() {
  $(this).val($(this).attr("title"));
  if($.trim($(this).val()) == "")
    $(this).val($(this).attr("title"));
  $(this)
    .focus(function() {
      if($(this).val() == $(this).attr("title")) $(this).val("");
    })
    .blur(function() {
      if($.trim($(this).val()) == "") $(this).val($(this).attr("title"));
    });
});

我也非常欢迎为你们可能拥有的任何对你有用的东西扯下我的战略!非常感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

使用HTML5 placeholder属性,并自行保存; p