我有一个简单的代码,我正试图进入我的网站以清除具有默认值的文本框,当用户点击它时,默认值应该清除,以便用户可以输入他/她的值。这是我所拥有的,但我不确定它是否正确,因为它不起作用。我刚开始使用JQuery
$(document).ready(function()
{
$('#startDateBox').click(function()
{
if(('#startDateBox')=='Beginning')
{
$('#startDateBox').val('');
}
})
});
答案 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; }