2012-01-18 3 views
4
$(this).find("input[name=amount]").val($(this).find("input[name=amount]").val().replace('$', '')); 

Продолжайте получать эту ошибку в моих инструментах разработчика. Я просто хочу заменить символ $ ничем, что есть ''Uncaught TypeError: Невозможно вызвать метод 'replace' of undefined

Мысли?

+0

Что такое $ (this)? Не могли бы вы представить полный пример? Например. на http://jsbin.com/? – Rost

ответ

10

Ваша ошибка только говорит о том, что нет элемента, соответствующего вашему селектору, поэтому element.val() возвращает undefined, который не имеет метода replace. Попробуйте отладить его и console.log() на каждом шаге.

Кроме того, вам не нужно искать элемент дважды. Просто сохраните его в переменной:

var $input = $(this).find('input[name="amount"]'); 
$input.val($input.val().replace('$', '')); 
+0

Спасибо за помощь :) Idk почему, но я забыл о console.log(); – wowzuzz

Смежные вопросы