2016-03-21 21 views
0

からテキストをフォーマット:ページロードで私はMVCでこのコードを持っているのJavascript

<div id="weight"> 
@Html.TextBoxFor(m => m.Weight, new Dictionary<string, object> { { "class", "form-control" } }) 
</div> 

は重量フィールドが0です。 0 g

そして、私は最後にgを追加するには、このフィールドを変更するたびに後:

私はこの分野のようにフォーマットします。

どうすればjavascriptから行うことができますか?

+1

は、なぜあなたはテキストボックス内の 'G'が必要なのでしょうか? 'label'や' span'などの外側に置いてください。 –

+0

私はこれをテキストボックスの中に入れる必要があります。 – user1577242

+0

これは、ユーザが毎回 'g'を削除することを迷惑にしていることを理解していますか? –

答えて

1

私はそれが外にgを置く方が良いと思うが、これはあなたのために働くだろう。

ロジックは次のとおりです。

  1. は、現在の値を取得します。
  2. その中にgがあるかどうかを確認してください。
  3. そうでない場合は、最後に追加してください。

このチェックをページショーで行い、入力からユーザーのフォーカスアウト(blur)を行った後に行います。

var input = document.querySelector('input'); 
 
function addG() { 
 
    var val = input.value; 
 
    if (val.indexOf('g') == -1) { 
 
     input.value = val + 'g'; 
 
    } 
 
} 
 

 
addG(); 
 
input.onblur = addG;
<input type="text" value="0" />

関連する問題