#javascript #jquery #html
#javascript #jquery #HTML
Вопрос:
Проверка числа в input
не работает, вот полный код: http://jsfiddle.net/aVF7M /
$('.number').each(function(){
$(this).bind('keyup change',function(){
$(this).val($(this).val().replace(/D/g,''));
});
});
$('a.add_input').live('click', function (event) {
event.preventDefault();
num()
var $class = '.' $(this).closest('div.find_input').find('div').attr('class').split(" ")[0];
var size_un = $($class).length;
var $this = $(this),
$div = $this.closest($class),
$clone = $div.clone().hide().insertAfter($div).fadeIn('slow');
$clone.find('.remove_table').remove();
$clone.find('.adda').not(':has(.remove_input)').append('<div class="mediumCell"><a href="" class="remove_input"></a></div>');
$clone.find('input:checkbox').prop('checked', false);
$clone.find('input:text').val('')
$this.remove();
var size_un = $($class).length---1;
$($class ':last input:checkbox').prop('name', 'checkbox_units[' size_un '][]');
console.log($($class ':last input:checkbox').prop('name'));
});
Комментарии:
1. Не могли бы вы, пожалуйста, очистить свой код и предоставить только столько, сколько имеет отношение к рассматриваемой проблеме?
Ответ №1:
Учитывая, что вы определили num(), и это работает.
Поскольку вы добавляете input.number динамически, вам нужно будет использовать live —
$('.number').live('keyup change',function(){
$(this).val($(this).val().replace(/D/g,''));
});
Демонстрация http://jsfiddle.net/aVF7M/1 /
Комментарии:
1. Все эти объекты jQuery и вызовы функций для получения и установки свойства, к которому можно получить прямой доступ:
this.value = this.value.replace(/D/g,'')
намного быстрее.