#javascript #html
#javascript #HTML
Вопрос:
Мне нужно добавить знак доллара в поле, в котором отображается общая сумма оплаты, но я не хочу, чтобы этот знак доллара был включен в тег «значение». Вот что у меня есть сейчас.
<input type="number" class="total" id="totalpaying" name="totalpaying" value="<% total %>" readonly>
Ответ №1:
- Создайте контейнер, оформленный как текстовое поле
- Внутри этого контейнера добавьте два встроенных элемента:
- интервал для хранения символа валюты
- текстовое поле ввода для хранения значения
- Оформите входной элемент так, чтобы он не имел границ.
Это создаст иллюзию текстового поля с символом валюты. Символ не будет доступен для редактирования.
Ответ №2:
Используя Css, вы можете добиться этого.
HTML
<div class="text">input type="number" class="total" id="totalpaying" name="totalpaying" value="<% total %>" readonly></div>
Css
<style>
div.text{
position:relative;
padding-left: 20px;
}
div.text:after{
position: absolute;
left: 6px;
top: 2px;
content: '$';
}
</style>
Ответ №3:
Как написано, ответ на вопрос «вы не можете». Если вы хотите <input>
, чтобы элемент отображал «$ 1.00», «$» должен быть частью value
свойства.
Теперь, при этом, есть способы делать то, что вы хотите, в основном с использованием Javascript для управления значением входного элемента.
Например, вы можете добавить обработчики событий для управления значением, когда оно находится в разных состояниях.
-
когда входной элемент инициализируется значением «1», добавьте некоторый Javascript, чтобы взять это «1» и отформатировать его как «$ 1.00»
-
когда пользователь нажимает на элемент элемента ввода (или вкладки в него), чтобы начать редактирование, используйте
onFocus
обработчик, чтобы удалить знак «$», чтобы пользователь редактировал «1.00» -
когда пользователь щелкает где-то в другом месте (или выводит вкладки из элемента ввода), используйте
onBlur
обработчик, чтобы переформатировать значение как «$ 1.00»
Это очень простой пример и, в зависимости от ваших потребностей, может быть или не быть тем, что вы хотите. Конечно, можно было бы написать обработчики Javascript для onFocus
, onChange
, onKeyUp/onKeyDown
, и onBlur
обработчики, чтобы сохранить это «$» там во время редактирования, но это будет намного сложнее.