JavaScriptが新しく、以下のコードはかなり悪い可能性があります。私は文字列から値を抽出しようとしています。私はparseFloat()がおそらく解決策ではないことを知っていますが、それを可能にする関数はありますか?JavaScriptの文字列から値を抽出します。
p id = "1"はランダムなテキストを含み、値で終わります。私の例以下ここで
:
<div id="abc">
<p id="1">abc 0.99</p>
<p id="2">-</p>
<button onclick="GetValue()">Extract value</button>
</div>
<script>
function GetValue() {
var Value = parseFloat(document.getElementById("1").innerHTML);
document.getElementById("2").innerHTML = Value;
}
</script>
どれ提案がはるかに高く評価されます!
この他のスレッドからの提案JavaScript get number from stringは、それを指摘してくれてありがとう! 更新されたコード:
function GetValue() {
var myValue = document.getElementById("1").textContent;
document.getElementById("2").innerHTML = myValue;
}
注:あなたは、システム変数に値を代入しようとしていた - Value
<div id="abc">
<p id="1">abc 0.99</p>
<p id="2">-</p>
<button onclick="GetValue()">Extract value</button>
</div>
<script>
function GetValue() {
var String = document.getElementById("1").innerHTML;
var Value = String.replace(/^\D+/g, '');
document.getElementById("2").innerHTML = Value;
/*
Solution 2> var Value = String.replace(/^.*?(-?([0-9]+|[0-9]*[.][0-9]+))[ \t]*$/gi,'$1');
Solution 3> var Value = String.match(/\d+(\.\d+)?/)[0];
*/
}
</script>
いつもスペースで区切られていますか?その場合は、innerTextを分割して最後の配列アイテム – lumio
を選択するだけです。https://stackoverflow.com/questions/10003683/javascript-get-number-from-string – user1844933
[JavaScript get string from string](https ://stackoverflow.com/questions/10003683/javascript-get-number-from-string) – pucky124