Показать сообщение отдельно
  #1 (permalink)  
Старый 03.03.2014, 20:14
Кандидат Javascript-наук
Отправить личное сообщение для sashgera Посмотреть профиль Найти все сообщения от sashgera
 
Регистрация: 20.09.2011
Сообщений: 140

Запретить ввод букв в инпут формы поиска
Здравствуйте
Не получается сделать в проверке формы поиска запрет ввода любых букв (в инпут разрешается вводить только цифры)
Пытался сделать так:
if ($('#searchError').val().replace(/\D/,'')  {	
$('.er').animate({width:'show'}, 500); // показать div с ошибкой
return false;
}

вот вся форма с проверкой, в строках 32-36 запрет ввода букв (не работает):
<script type="text/javascript">
jQuery(function($) {
	$("#keyword").focus(function() { // удаление текста в input при фокусе
  if ( $(this).val() == $(this).attr("data-placeholder") ) {
    $(this).val("");
    $(this).css("color","#040404");
  }
}).blur(function() {
  if ( !$(this).val() ) {
    $(this).val( $(this).attr("data-placeholder") );
    $(this).css("color","#858585");
  }
}).focus().blur();			
				
	$('#searchFormButton').click(function(){ // проверка заполненности поля input
		submitSearchForm();
	});
	$('#keyword').keydown(function(event) {		
		if(event.keyCode==13) {		// Enter 
			event.preventDefault();
			submitSearchForm();
		}
	});
	function submitSearchForm() {		
		if($('#searchError').length){
			$('#searchError').remove();
		}
		if( !$.trim( $('#keyword').val() ) || $('#keyword').val() == $('#keyword').attr("data-placeholder") ) {
		$('.er').animate({width:'show'}, 500); // показать div с ошибкой
			return false;
		} 
//	проверка инпут - запрет ввода любых букв (только цифры) как правильно сделать?
    if ($('#searchError').val().replace(/\D/,'')  {	
    $('.er').animate({width:'show'}, 500); // показать div с ошибкой
			return false;
		} 	
//	????????????????????????		
		$('#searchForm').submit();
	}
$("#keyword").click(function(){ // спрятать div с ошибкой при клике в поле input
   $(".er").animate({width:'hide'}, 300);
   });
});
</script>
 
<form action="<?php $sess->purl( $mm_action_url."index.php?page=shop.browse" )?>" method="post" id="searchForm" class="search">
  <div style="float:left;">
        <input name="keyword" type="search"  class="input" id="keyword" 
        data-placeholder="<?php echo $VM_LANG->_('PHPSHOP_SEARCH_TITLE_SKU') ?>" 
        value="<?php echo $VM_LANG->_('PHPSHOP_SEARCH_TITLE_SKU') ?>"/>
		<input class="submit" type="button"  name="" value="" id="searchFormButton" />
  </div>
</form>

Последний раз редактировалось sashgera, 03.03.2014 в 20:29.
Ответить с цитированием