1

ユーザーがテキストボックスをクリックすると、ユーザーが自分の値を入力できるように、デフォルト値をクリアする必要があります。これが私が持っているものですが、機能していないため正しいかどうかはわかりません。JQueryを始めたばかりです

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

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

         })
   });​ 
4

5 に答える 5

3

あなたはこの部分で間違っています:

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

まず、あなたが行方不明$です。startDateBox第二に、値を比較してから使用したいと思いますval()

これを試して:

 $(document).ready(function()
  {
        $('#startDateBox').click(function()
        { 
            if($('#startDateBox').val()=='Beginning')
            {
             $('#startDateBox').val(''); 
            }
         })
   });​ 
于 2013-03-11T18:46:12.867 に答える
3

.val()最初の と、同じ行の$の前を見逃しました。その関数内でテキストボックス DOM 要素自体を参照するため、テキストボックスを参照するために を('#startDateBox')使用することもできます。これを jQuery 関数でラップすると、フレームワークのすべての利点にアクセスできます。$(this)this$()

$(document).ready(function()
{
    $('#startDateBox').click(function(){  
         if($(this).val() == 'Beginning')
                 ^^^^^^ Here
         {
             $(this).val(''); 
         }
    })
});​ 
于 2013-03-11T18:46:38.277 に答える
0

HTML5ブラウザにはこれを使用することをお勧めします

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

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

これは変更する必要がある行です

また

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

そのテキストボックスがフォーカスされるまで、クリックはタブのヒットを処理しません

于 2013-03-11T18:46:19.120 に答える
0

まあ、常に偽になりますif(('#startDateBox')=='Beginning')...

あなたはもっと次のようなことを意味していたと思います:

if($('#startDateBox').val() == 'Beginning')
于 2013-03-11T18:46:49.187 に答える
0

最近、この目的のために非常に小さな jquery プラグインを作成しました。

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

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

if($('#input').val() === $('#input').placeholder()){ return false; }
于 2013-03-11T18:50:53.940 に答える