0

( )の.unmask()後に関数を使おうとしましたが、うまくいきませんでした。.blur()jQuery

助けてください、これは私のコードです:

$('.cnpj').focus(function()
{
    $(this).mask('99999999/9999-99');
})
.blur(function(e)
{
   if($(this).val().length == 0)
   {
        var mask = '99999999/9999-99';
        $(this).unmask(mask);
        $(this).val('CNPJ');
   }
});

HTMLコードは次のとおりです。

<input type="text" id="cnpj" name="cnpj" class="cnpj empty entriesFormInput01" value="CNPJ" />

私の目標は、ユーザーが入力に値を入力しない場合value='CNPJ'、フォームに多くの入力があり、ユーザーが1つの入力に焦点を合わせて離れると、ラベルが値になるため、入力が同じで返されることです。 、値がない場合、入力は空になります。値なしで入力を終了すると、最初の値が再び返されます。

4

1 に答える 1

0

まず第一に、jQuery mask()関数はデフォルトとして存在しないと思います。そのように使えるjQuery用のプラグインがありますよね?このプラグインを見つけました。このプラグインまたは別のプラグインをロードしなかったため、コードが機能しなかったと思います。

$('.cnpj').focus(function(){
    if($(this).val() == 'CNPJ') 
       $(this).val('');
    //$(this).mask('99999999/9999-99');
}).blur(function(){
    if($(this).val().length == 0)
    {
        //var mask = '99999999/9999-99';
        //$(this).unmask(mask);
        $(this).val('CNPJ');
     }
});
于 2012-08-02T14:48:05.007 に答える