2

JavaScript を使用して、フォーム内の入力フィールドに入力された金額の前にドル記号を自動的に配置しようとしています。以下のコードを使用していますが、何が欠けているのかわかりません。

<!DOCTYPE html>
<head>
<title>Example</title>
<script>
var test = document.getElementById("name");
document.write("$"+test.value);
</script>
</head>

<body>

<form action="" method="get">
<input type="text" id="name"/>
</form>

</body>
</html>

どんな助けでも大歓迎です。ありがとう!

4

2 に答える 2

4

これは、ドル記号を追加する方法です: http://jsfiddle.net/VSuvA/

HTML:

<form action="" method="get">
<input type="text" id="name" onblur="handleChange()"/>
</form>

JS:

function handleChange() {
   var myValue = document.getElementById("name").value;

   if (myValue.indexOf("$") != 0)
   {
      myValue = "$" + myValue;
   }

   document.getElementById("name").value = myValue;
}

onchangeorのようなイベントをリッスンしてからonblur、値を元に戻す必要があります。document.writeあなたが必要とすることはしません。

于 2013-08-20T14:06:40.250 に答える
3

これを行う最良の方法は、次のようなものです。

Amount: $<input type="number" id="name" min="0" max="9999" step="0.01"/>
于 2013-08-20T13:59:03.077 に答える