2013-07-28 1 views
0

이 코드를 사용하여 입력을 지우는 것이 좋습니다. 한 입력이 그나마으로 두 클래스가 존재할 때 입력 값 지우기가 작동하지 않음

작동하지 않습니다이
<input class="textBox" name="textBox" value="some value" > 

$(document).ready(function() { 
    var default_val = ''; 
    $('input[class^="textBox"]').focus(function() { 
     if($(this).val() == $(this).data('default_val') || !$(this).data('default_val')) { 
      $(this).data('default_val', $(this).val()); 
      $(this).val(''); 
     } 
    }); 

    $('input[class^="textBox"]').blur(function() { 
     if ($(this).val() == '') $(this).val($(this).data('default_val')); 
    }); 
}); 

를 작동하고 두 개의 클래스 ...

을 가지고 있지만 입력이

<input class="text_box textBox" name="textBox" value="some value" > 

로 변경하는 경우입니다 내 코드를 변경하더라도 작동하지 않음

$(document).ready(function() { 
    var default_val = ''; 
    $('input[class^="text_box textBox"]').focus(function() { 
     if($(this).val() == $(this).data('default_val') || !$(this).data('default_val')) { 
      $(this).data('default_val', $(this).val()); 
      $(this).val(''); 
     } 
    }); 

    $('input[class^="text_box textBox"]').blur(function() { 
     if ($(this).val() == '') $(this).val($(this).data('default_val')); 
    }); 
}); 

이것은

<input class="text_box textBox" type="text" name="email" id="email" value="Su Correo electrónico" size="22"> 
+0

그것의 작업 : http://jsfiddle.net/mCRqJ/ – Cherniv

+0

조언 그냥 단어, jQuery로 래핑 된 객체를 캐싱해야 jQuery를 반복해서 수행하지 않아도된다. 예를 들어, F.J.의 예에서와 같이'var $ this = $ (this)'그리고'$ this.val ('')'와'var $ tb = $ ('input.textBox')' – jedmao

+0

알아두기, HTML5 자리 표시 자 속성 사용을 고려해 보셨습니까? http://davidwalsh.name/html5-placeholder – jedmao

답변

2

사용하십시오 class selector 작동하지 않는 그것 입력 : 나를 위해로서

$(document).ready(function() { 
    var default_val = ''; 
    $('input.textBox').focus(function() { 
     if($(this).val() == $(this).data('default_val') || !$(this).data('default_val')) { 
      $(this).data('default_val', $(this).val()); 
      $(this).val(''); 
     } 
    }); 

    $('input.textBox').blur(function() { 
     if ($(this).val() == '') $(this).val($(this).data('default_val')); 
    }); 
}); 
+0

나는 행운을 빌어 코드를 사용해 보았습니다. (필자는 내 질문의 끝에 입력을 복사하여 붙여 넣습니다. 입력이 제대로 작동하지 않습니다. –

+0

입력과 함께 계속 작동합니다. 당신은 주셨습니다 : http://jsfiddle.net/lpiepiora/mCRqJ/1/ - 어떤 브라우저와 버전을 사용하고 있습니까? – lpiepiora

+0

메신저로 Mac을 사용하고 있습니다. = (문제가 있는데 왜 작동하지 않는지 깨닫지 못합니다. .. .. 헤더에 js 파일을로드하는 코드를 iput ... 하나의 입력과 함께 작동하지만 다른 것들은 작동하지 않습니다 ... 나는 당신에게 오후를 통해 링크를 보낼 수 –

관련 문제