C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■90085 / )  Re[7]: TextBoxForでHttppost時の通貨書式→数値変換
□投稿者/ WebSurfer (1745回)-(2019/02/07(Thu) 11:22:26)
No90083 (ジョディー さん) に返信

> そこで、下記のページを発見したのですが、解決に至っておりません。。。
> http://oboe2uran.hatenablog.com/entry/2014/07/04/120126

記事は詳しくは読んでませんが、submit する直前に input 要素の value 属性の値を、例えば
\1,000 から 1000 に書き換えるということでしょうか?

で、解決に至らないということは具体的にどういうことか書いてないので分かりませんが(質問
するならその辺はきちんと書いてくださいね)、たぶん、書き換える前に ASP.NET MVC に実装さ
れているクライアントサイドでの検証がかかってしまうのが問題なのではないかと想像してます。

その想像が当たっているとすると、自分が思いつく手段は:

(1) 書き換えのために質問者さんが追加したスクリプトの動作と、ASP.NET MVC のスクリプトの
  動作に整合が取れるように、どちらかもしくは両方のスクリプトを書き直して対応できない
  か検討する。

  ただし、そもそも書き直すことで課題に対応できるかどうかは自分は分かりません。質問者
  さんが検討して可能であると判断されたらその方向に進んでみてはいかが。

(2) クライアント側での検証を無効にする。価格以外の入力もあるでしょうから、これは現実的
  ではないとは思いますが。

(3) 先のレスで述べたように、decimal 型ではなく string 型として扱い、検証はデータアノテ
  ーション属性を付与して正規表現で行なう。

・・・ぐらいです。

自分がやるとすると (3) かなぁ・・・という感じです。

(深く考えてませんので、あくまで「感じ」です。先にも書きましたが、DB のフィールドの型が
money 型でしょうから、サーバー側での取り扱いを考えると現実的ではないかもしれません)
返信 編集キー/


管理者用

- Child Tree -