2013-11-25 6 views
-1

Хорошо, я посмотрел по всему Интернету, и я должен искаться неправильно, потому что знаю, что есть способ сделать это.JQuery/PHP для простого разделения на поле только для чтения

Вот что мне нужно сделать. У меня есть текстовое поле ввода для пользователя, чтобы положить некоторое число после того, как они поместили это число, я хочу, чтобы его разделили на 1000, и результат, который я хочу заполнить в текстовое поле только для чтения прямо рядом с ним.

Эта сложная часть для меня - это нужно сделать без кнопки отправки или обновления страницы. Также информация о том, что вход пользователя должен быть доступен для размещения в базе данных после завершения этих шагов.

Я знаю, что это, вероятно, что-то очень простое, и я пересматриваю что-то. Веб-сайт построен на основе WAX (не потому, что он имеет значение).

здесь два входа:

<div class="investment"> 
<dl class="investment_amount"> 
<dt> 
<label for = "Investment Amount">Investment Amount</label> 
</dt> 
<dt> 
<input type="text" class="invest" placeholder="Enter Investment Amount" name="investment_amount" value=""/> 
</dt> 
</dl> 
<dl class="num_notes"> 
<dt> 
<label for="Number of Notes">Number of Notes</label> 
</dt> 
<dt> 
<input type="hidden" class="notes" placeholder="Number of Notes" name="number_of_notes" value="" /> 
<input type="text" id="note" class="form-control" placeholder="Number of Notes" name="number_of_notes" value="" /> 
</dt> 
</dl> 

</div> 

любая помощь будет принята с благодарностью

+0

Да, вам нужно использовать javascript. Проверьте использование событий «размытия» в текстовом поле – tymeJV

+0

Я попытался использовать размытие, но это не сработало. Я установил invest_amount как переменную и разделил ее на 1000, но когда я выхожу за пределы текстового поля, ничего не происходит. Спасибо – Kemmieg

+0

Это вы имеете в виду? http://jsfiddle.net/fgubc/ – diffie

ответ

0

Ну вы можете просто выполнить расчет по ONBLUR случае Javascript, как

первый я таящие ID для вашего поля ввода

<input type="text" class="invest" placeholder="Enter Investment Amount" name="investment_amount" value="" onblur="calculate()" id="txtamount"/> 

Я изменяю ваше скрытое поле в поле только для чтения, потому что я не знаю, почему вы кладете скрытые ??? и добавление атрибута ID для результирующего поля, а

<input type="text" class="notes" placeholder="Number of Notes" name="number_of_notes" value="" id="result" readonly/> 

<script type="text/javascript"> 
    function calculate() 
    { 
      document.getElementbyId('result').value = parseFloat(document.getElementbyId('txtamount').value)/1000; 
    } 
</script> 

Примечание

еще одна вещь Kemmieg, что никогда не сохранить значение в базе данных, которая рассчитывается на клиентской машине, как тот, который мы делаем выше, потому что кто-то можно легко изменить Разделить на 1000 до Разделить на 100, и если это значение будет сохранено в базе данных. Таким образом, было бы лучше показать клиенту вычисленное значение в поле, но если вы хотите сохранить вычисленное значение поля, то вычислите на сервере, а затем сохраните вычисленное значение сервера в базе данных, а не значение результата javascript.

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