删除文本框中的值非常简单的javascript

删除文本框中的值非常简单的javascript,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我有一个非常简单的javascript问题。我将在这里使用部分查询,但有类似的方法通过javascript实现。基本上,我正在编写一个小脚本,当你点击一个有值的文本框时,它会取出值,这样你就可以输入了(例如,对于大多数用户名框,它们都有一个小注释)。也许有更好的方法可以做到这一点(我已经想到了一些),所以也可以自由地提出建议。不管怎样,我很容易地运行了这个部分,问题是每当用户再次单击时,所有数据都会被删除,所以如果他们只是想调整一些他们无法调整的内容。为了解决这个问题(我将以秒为单位显示代码),

我有一个非常简单的javascript问题。我将在这里使用部分查询,但有类似的方法通过javascript实现。基本上,我正在编写一个小脚本,当你点击一个有值的文本框时,它会取出值,这样你就可以输入了(例如,对于大多数用户名框,它们都有一个小注释)。也许有更好的方法可以做到这一点(我已经想到了一些),所以也可以自由地提出建议。不管怎样,我很容易地运行了这个部分,问题是每当用户再次单击时,所有数据都会被删除,所以如果他们只是想调整一些他们无法调整的内容。为了解决这个问题(我将以秒为单位显示代码),我放置了一个check变量和一个if。这就是它看起来的样子。(顺便说一句,它不起作用)

var unumber=0;
var pnumber=0;

如果(unumber您对数字小于1的检查应在单击处理程序中

var unumber = 0;
var pnumber = 0; 

$('#username').click(function(){
  if(unumber<1){
    unumber = 1;
    $('#username').val('');
  }
});

$('#password').click(function(){
  if(pnumber<1){
     pnumber = 1;
     $('#password').val('');
  }
});
var unumber=0;
var pnumber=0;
$('#用户名')。单击(函数(){

如果(unumber您对数字小于1的检查应在单击处理程序中

var unumber = 0;
var pnumber = 0; 

$('#username').click(function(){
  if(unumber<1){
    unumber = 1;
    $('#username').val('');
  }
});

$('#password').click(function(){
  if(pnumber<1){
     pnumber = 1;
     $('#password').val('');
  }
});
var unumber=0;
var pnumber=0;
$('#用户名')。单击(函数(){

如果(unumber我想说最好的方法是在文本输入中有一个清除按钮。请参见此处获取示例:

我想说最好的方法是在文本输入中有一个清除按钮。请参见此处获取示例:

无需进行混乱的数字检查,使用有关元素的数据

这应该对你有用

$('#username,#password').focus(function(){
  if(!$(this).data('seen')) {
    $(this).data('seen',true);
    $(this).val('');
  }
});

如果用户没有输入任何内容,您可以存储占位符并将其替换回模糊状态。 更详细的实施如下:


无需混乱的数字检查,使用相关元素上的数据

这应该对你有用

$('#username,#password').focus(function(){
  if(!$(this).data('seen')) {
    $(this).data('seen',true);
    $(this).val('');
  }
});

如果用户没有输入任何内容,您可以存储占位符并将其替换回模糊状态。 更详细的实施如下:



作为一个快速提示,您所描述的内容似乎就是所谓的“水印”功能性。我建议您快速浏览一下jQuery可用的水印插件,看看是否有更好的解决方案可供您使用。您能解释一下为什么“需要”这样实现它吗?因为正如您所说,它可以做得更好/更有效。嗯,我说了吗?如果是,我没有,一点也没有。我想知道mista是什么意思正如我所说,我真的没有纠正这个问题。作为一个快速提示,你所描述的似乎就是所谓的“水印”功能性。我建议您快速浏览一下jQuery可用的水印插件,看看是否有更好的解决方案可供您使用。您能解释一下为什么“需要”这样实现它吗?因为正如您所说,它可以做得更好/更有效。嗯,我说了吗?如果是,我没有,一点也没有。我想知道mista是什么意思ke I make,我真的没有正确地表达这个问题这是OP的代码试图做的,但没有告诉他代码出了什么问题,这就是问题的重点。另外,建议这是一个糟糕的选择。这不适用于我回答中列出的许多情况。谢谢你在rewri中所说的@JuanMendes评论te,这不太可靠谢谢!我接受juans的回答是因为他向我展示了我在代码中犯下的难以置信的愚蠢错误,但感谢tooThis做了OP的代码试图做的事情,但没有告诉他代码有什么问题,这是问题的关键。另外,建议这是一个糟糕的选择。这并不能解决很多问题案例,在我的答案中列出。谢谢你的评论@JuanMendes,就像你在重写中说的,这不是很有力谢谢!我接受juans的答案,因为他告诉我我在代码中犯了一个难以置信的愚蠢错误,但我很感激。一个清晰的按钮是你键入的东西,比如搜索。而不是像OP那样的占位符文本。谢谢提示,但点击更自然、更直观一个清晰的按钮是针对你键入的内容,比如搜索。而不是像OP那样针对占位符文本。谢谢提示,但点击更自然、更直观谢谢!哇,我不知道为什么我没有看到,是的,这个方法确实是赤裸裸的,没有动态性的,我只是想找出我的代码中的愚蠢错误。因此,可以肯定的是,javascript处理程序不会再次运行整个脚本,对吗?只是处理程序函数?要小心占位符属性,它不是在所有浏览器中都完全支持的。我的答案中有一个jQuery实现链接,以使它在所有浏览器和我正在使用的web应用程序中都能正确运行ing on是为了我的学校,出于某种原因,学校决定严格使用IE6:(你会发现,政府和教育部门的政策往往会让升级系统变得耗时和昂贵。没错,这是一个令人讨厌的浏览器,但他们也允许使用firefox。这也与安全提供商cisco的软件有关。你认为你能回答我的问题吗第一条评论?它是针对juan的,但如果你能回答的话,那就是Greathanks!哇,我不知道为什么我没有看到这一点,是的,这个方法确实是赤裸裸的,没有动态性的,我只是想找出我代码中的愚蠢错误。所以,可以肯定的是,javascript处理程序不会再次运行整个脚本,对吗?只是处理程序的乐趣Action?注意占位符属性,它在所有浏览器中都不完全受支持。我的答案中有一个jQuery实现的链接,可以使它在所有浏览器中正常运行。我正在开发的web应用是为我的学校开发的,出于某种原因,学校决定严格使用IE6(你会发现,政府和教育部门的政策往往会让升级系统变得耗时和昂贵。没错,这是一个令人讨厌的浏览器,但他们也允许使用firefox。这也与安全提供商cisco的软件有关