передача переменной
Всем привет!
При при заполнении текстового поля мне необходимо сохранить это значение в переменную (length), чтобы потом передать его в функцию для дальнейших вычислений..... <input type="text" name="length" id="length" value=""> $('document').ready(function() { var lenght; calculationPriceOnLine(width,lenght,priceKvMetr) console.log(lenght ); но здесь получаю undefined $('#length').on('keyup', function(){//здесь получаю значение и записываю в переменную lenght. var lenght = $(this).val(); // console.log(lenght); выводит значение переменной }); function calculationPriceOnLine(width,lenght,priceKvMetr){ в этой функции и нужна переменная lenght ....... console.log(lenght ); но здесь тоже получаю undefined if(width > 0 && lenght > 0){ return width * lenght * priceKvMetr; } } }); Вопрос как получить переменную lenght из обработчика и передать ее в функцию и вообще... как правильно реализовать такую логику, что я делаю не так. Спасибо |
Цитата:
Можно еще сделать переменную глобальной... Можно просто читать значение из поля в нужный момент... |
Спасибо......но можете в коде привести хотя б один пример
|
yintar,
не проще ли просто вместо length вызывать $("#length").val() ? |
Цитата:
var lenght; $('document').ready(function() { calculationPriceOnLine(width,lenght,priceKvMetr) console.log(lenght ); но здесь получаю undefined $('#length').on('keyup', function(){//здесь получаю значение и записываю в переменную lenght. lenght = $(this).val(); // console.log(lenght); выводит значение переменной }); function calculationPriceOnLine(width,lenght,priceKvMetr){ //в этой функции и нужна переменная lenght ....... console.log(lenght ); но здесь тоже получаю undefined if(width > 0 && lenght > 0){ return width * lenght * priceKvMetr; } } }); |
Цитата:
|
ksa , вы написали 3 варианта как это можно сделать.....вы что думаете что я перед тем как спрашивать сам ничего не пробовал.........ошибаетесь.... росто не получается ,поэтому и спрашиваю.....я вас просил пример кода, а вы мне ответили моим же кодом......зачем!!!!!!!!!!!! на форумах обычно помогают......для того то они и нужны
|
Цитата:
Цитата:
|
Цитата:
И что-то мне подсказывает, что ты просто роешь подземный ход на чердак. ;) |
не проще ли просто вместо length вызывать $("#length").val() ?
Не а , не проще, потому, что мне надо получать это значение именно когда пользователь ввел туда данные(по событию)...в том то и проблема что я не понимаю почему ,когда я записываю значение в переменную при событии, то в другом месте(вне этого события) эта переменная не видна........... p.s. Я прочитал при области видимости и пробовал сделать по-разному, в том числе и глобально ,но все равно не работает....... |
yintar,
Уж если глобальная, то глобальная - не надо передавать ее в качестве параметра <input type="text" name="length" id="length" value=""> <script src='http://code.jquery.com/jquery-latest.js'></script> <script> var lenght = 0; $('document').ready(function() { // calculationPriceOnLine(width,priceKvMetr); console.log(lenght); //но здесь получаю undefined $('#length').on('keyup', function(){//здесь получаю значение и записываю в переменную lenght. lenght = $(this).val(); console.log(lenght); //выводит значение переменной calculationPriceOnLine(10,20); }); function calculationPriceOnLine(width,priceKvMetr){ //в этой функции и нужна переменная lenght ....... console.log(lenght ); //но здесь тоже получаю undefined if(width > 0 && lenght > 0){ return width * lenght * priceKvMetr; } } }); </script> И еще - в описании функции стоят ее внутренние параметры, а при вызове функции в качестве параметров надо задавать определенные на момент вызова переменные или константы |
Часовой пояс GMT +3, время: 06:33. |