单击Jquery清除输入框

时间:2013-03-11 18:43:47

标签: javascript jquery

我有一个简单的代码,我正试图进入我的网站以清除具有默认值的文本框,当用户点击它时,默认值应该清除,以便用户可以输入他/她的值。这是我所拥有的,但我不确定它是否正确,因为它不起作用。我刚开始使用JQuery

   $(document).ready(function()
  {
        $('#startDateBox').click(function()
        { 
            if(('#startDateBox')=='Beginning')

            {
             $('#startDateBox').val(''); 
            }

         })
   });​ 

5 个答案:

答案 0 :(得分:3)

这部分你错了:

 if(('#startDateBox')=='Beginning')

首先,您错过了$。 其次,我认为您需要比较startDateBox值,然后使用val()

试试这个:

 $(document).ready(function()
  {
        $('#startDateBox').click(function()
        { 
            if($('#startDateBox').val()=='Beginning')
            {
             $('#startDateBox').val(''); 
            }
         })
   });​ 

答案 1 :(得分:3)

您错过了第一个.val(),以及同一行$前面的('#startDateBox')。 您还可以使用$(this)来引用文本框,因为在该函数中this指的是文本框DOM元素本身。使用jQuery函数$()对其进行包装,可以访问所有框架的好东西。

$(document).ready(function()
{
    $('#startDateBox').click(function(){  
         if($(this).val() == 'Beginning')
                 ^^^^^^ Here
         {
             $(this).val(''); 
         }
    })
});​ 

答案 2 :(得分:0)

我建议HTML5浏览器使用此

 <input type="text" id="Beginning" placeholder="Beginning"  />

if($('#startDateBox').val() =='Beginning')

这是需要更改的行

        $('#startDateBox').on("focus", function()
        { 
          // code here

在该文本框被聚焦之前,点击将不会处理点击标签

答案 3 :(得分:0)

好吧,if(('#startDateBox')=='Beginning') 总是是假的......

我认为你的意思更像是:

if($('#startDateBox').val() == 'Beginning')

答案 4 :(得分:0)

我最近为此目的写了一个非常小的jquery插件:

https://gist.github.com/rmcvey/5136582

$('#input').placeholder("Placeholder Text");

if($('#input').val() === $('#input').placeholder()){ return false; }