ЯС: Выбор чисел только из текстового поля плюс простой расчет? - PullRequest
1 голос
/ 20 ноября 2011

Я пытаюсь изменить значение на странице во время загрузки и меняю валюту с помощью простого расчета.

Если кто-нибудь может помочь мне быть великим ,,

вот мой код:

<head>
<script type="text/javascript">
function myscript() {
var input = document.getElementById('span1').innerHTML;
output = '$19,999.9 AUD';
document.body.innerHTML = document.body.innerHTML.replace(input,output);
}
</script>
</head>

<span id="span1" class="text field">$9,999.9 USD</span> 
<body OnLoad = "myscript();">
</body>

Так что в основном я хочу знать, как заставить его принимать ТОЛЬКО числа из текстового поля id = "span1" и выполнять простые вычисления, такие как + 10, и заменять USD на AUD без потери, и.

Я пытался использовать parseInt, но он не работал.

Заранее спасибо:)

EDIT: Обратите внимание, что значение span1 является динамическим и всегда меняется

Ответы [ 3 ]

1 голос
/ 20 ноября 2011

Простой способ - просто взять числа из строки.

var regpattern = /[^0-9.-]+/g;
var output= parseFloat(input.replace(regpattern , ''));
output += 10;

Я бы также рекомендовал, чтобы тип валюты USD и AUD не был частью span1 , но был бы частью span2 , который показывается сразу после. Таким образом, синтаксический анализ не нужно обрабатывать.

0 голосов
/ 20 ноября 2011

http://jsfiddle.net/ArXbL/1/ работает на вас

0 голосов
/ 20 ноября 2011

Этот пост может быть полезен: Валюта Math в JavaScript .

В нем объясняется, как использовать parseFloat в сочетании с string.replace для выполнения анализа строк валюты с плавающей точкой, а затем выполнять вычисления

...