2013-09-26 2 views

답변

8

확인하십시오. Fiddle. 관련 코드 :

$(function() { 
    $('#input1').on('keypress', function(e) { 
     if (e.which == 32) 
      return false; 
    }); 
}); 
+0

정말 이상한, 그냥 내 페이지에서 작동하지 않는 것 ... 난 여전히 이메일 입력에 공백을 추가 할 수 있습니다! goo.gl/0TXWGV – user123

+0

jQuery 버전이 오래되었습니다 (1.5.2). jQuery를 업데이트하거나'on()'대신'live()'를 사용할 수 있습니다. – Raidri

+0

예, 방금 문제가 발견되었습니다. 사실 이전 버전이었습니다. 그것을 보아 주셔서 감사합니다. – user123

0

예 javascript/JQuery를 사용하여 가능합니다.

모든 텍스트 상자에 원한다면 다음과 같이하십시오.

$(function() { 
    $('.formfield input[type=text]').on('keypress', function(e) { 
     if (e.which == 32) 
      return false; 
    }); 
}); 

특정 텍스트 상자를 위해 그것을 원하는 경우, 다음 양식을 제출 방지 할 제약 검증을 적용 할 텍스트 상자 입력에 ID를 추가하고 #textBoxId

0

사용 HTML5의 확장 된 입력 유형 .formfield input[type=text] 교체 현대적인 브라우저에서 유효하지 않은 이메일 :

<input type="email" value="" maxlength="30" name="email" class="formfield w0"> 

이전 버전의 브라우저에서, 당신이 "텍스트"로 설정됩니다로 입력의 타입이 "이메일", 아님을 감지 할 수있는 값이 유효하지 않은 것으로 간주됩니다. 붙여 넣기 나 실수로 다른 입력 방법을 통해 우회 할 수있는 스페이스 키의 기본 동작을 방지하는 대신 양식 제출을 차단하는 것이 좋습니다.

var frm = document.getElementById('myform'); 

if (frm.email.type === 'text') { 
    frm.onsubmit = function() { 
     if (/\s/.test(frm.email.value)) { 
      // Tell your user the field is invalid here, e.g. 
      frm.email.className = 'invalid'; 

      // Prevent form submission 
      return false; 
     } 
    } 
} 

근무 데모 : http://jsfiddle.net/hgc7C/

이 잊지 마세요 문서가 준비 후

다음 코드는이의 예이며, 실행해야 서버 측 폼 유효성 검사의 대체품이 아닙니다.

+0

감사합니다. 좋은 해결책인데,이 경우에만 밝게 할 필요가 없습니다. – user123

관련 문제