Всем привет!
У меня есть блок div
и input
. Когда пользователь вводит значение в input
, то это значение переносится в div
. Как мне сделать, что бы когда пользователь вводил, к примеру степень ( 2^3
), то она в div'е
отображалась вот так: 2³
?
Код:
$(function() {
$('#number').on('keyup', function() {
$('#value').html($(this).val());
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
<input type="text" id="number">
</p>
<p>Уравнение:</p>
<div id="value"></div>
$('#value').html(process($(this).val()));
, где process
- ваше преобразование:
$(function() {
$('#number').on('keyup', function() {
$('#value').html(process($(this).val()));
});
});
function process(str) {
return str.replace(/\^(\d+)/g, '<sup>$1</sup>');
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
<input type="text" id="number">
</p>
<p>Уравнение:</p>
<div id="value"></div>
В Javascript
нет поддержки рекурсирных регулярных выражений, поэтому нужно либо писать парсер, либо извращаться.
Без вложенных скобок можно так:
$(function() {
$('#number').on('keyup', function() {
$('#value').html(process($(this).val()));
});
$('#value').html(process($('#number').val()));
});
function process(str) {
var res;
while (res !== str) {
res = str;
str = res.replace(
/([^+\-*/\^()]+)\^([^+\-*/\^()]+|\([^\)]+\))/g,
'$1<sup>$2</sup>'
);
}
return str;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
<input type="text" id="number" value="a^(x^3+3^x)/x^2">
</p>
<p>Уравнение:</p>
<div id="value"></div>
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Доброго дня всемУ меня есть сценарий JS для нажатия на ссылки, которые содержат некое слово
Всем привет! Я только в начале изучения js))) Поэтому такой вопрос: Есть 5 скрытых блоков (display: none) и кнопка с прицепленным к ней событиемСуть...
Привет всем! Не работает localStoragesetItem не могу понять в чем причина