2

私は Web 開発の初心者で、Javascript を使用していくつかの入力のテキストを変更しようとしています。ここに私のコードがしなければならないことの例があります

<!DOCTYPE html>
<html>
<body>

<p>Click the button to replace "R$" with "" in the field below:</p>

<input id="demo" value="R$ 1223,43"></input>
<input id="demo1" value="R$ 134523,67"></input>
<input id="demo2" value="R$ 12453,41"></input>

<button onclick="myFunction()">Try it</button>

<script>
function myFunction()
{
var x=document.getElementByTagName("input")

for(var i = 0; i < x.length; i++) {

  var str=x[i].innerHTML; 

  var n=str.replace(",",".");
  var n1 = n.replace("R$ ","");

  document.getElementById("demo").innerHTML=n1;
 }


}
</script>

</body>
</html>

そこで、「R$」を撤回して、「,」を「.」に置き換えたいと思います。一部の数学演算用。そして、コード内のすべての入力でこれを行う必要があります。

4

4 に答える 4

1

次のように見えるように、いくつかのものを置き換えて、ほぼそこにいました。

function myFunction() {
    var x = document.getElementsByTagName("input"); // ; was missing and you used getElementByTagName instead of getElementsByTagName

    for (var i = 0; i < x.length; i++) {

        var str = x[i].value; // use .value

        var n = str.replace(",", ".");
        var n1 = n.replace("R$ ", "");

        //document.getElementById("demo").innerHTML=n1; // use x[i] again instead
        x[i].value = n1; // and again use .value
    }
}

デモ- 更新されたコードの実行


于 2013-04-11T12:15:54.713 に答える
0

まず、.innerHTML の代わりに .value を使用します。.innerHTML は、タグの開始と終了内のテキストを参照します。

次に、var x=document.getElementByTagName("input") のスペルを修正します。getElementsByTagName にする必要があります。

于 2013-04-11T12:16:11.987 に答える
0

この関数はあなたが望むことをするはずです:

function myFunction()
{
    var eles=document.getElementsByTagName("input");

    for(var i = 0; i < eles.length; i++) 
    {
        if(eles[i].type != 'text') continue; // inputs that aren't of type text dont make sense here
        var str = eles[i].value; 
        str=str.replace(",",".");
        str=str.replace("R$ ","");
        eles[i].value=str;
    }
}
于 2013-04-11T12:17:11.763 に答える
0

これらは必要なステップです - 少なくともステップ 1 から 3

  1. スクリプトをそれが属するヘッドに移動しました
  2. getElementByTagName を getElementsByTagName (複数形) に変更しました
  3. x[i].value の取得と変更
  4. 置き換えを連鎖させた

デモ

<!DOCTYPE html>
<html>
<head>
<title>Replace example</title>
<script>
function myFunction() {
  var x=document.getElementsByTagName("input"); // plural

  for(var i = 0; i < x.length; i++) {
    var str=x[i].value; 
    x[i].value=str.replace(",",".").replace("R$ ","");
  }
 }
</script>
</head>

<body>

<p>Click the button to replace "R$" with "" in the field below:</p>

<input id="demo" value="R$ 1223,43"></input>
<input id="demo1" value="R$ 134523,67"></input>
<input id="demo2" value="R$ 12453,41"></input>

<button onclick="myFunction()">Try it</button>


</body>
</html>
于 2013-04-11T12:15:36.957 に答える