web-dev-qa-db-ja.com

フォームへの入力中に自動的に値を取得する入力フィールドを使用するにはどうすればよいですか?

在庫管理システムがあるとします。これには、ユーザーが注文を入力できるフォームが含まれています。注文には次のようなプロパティがあります。

  • 日付
  • サプライヤー
  • 注文したユーザー
  • 合計金額
  • パーセントでのVAT(税)
  • お金で支払う税金

フォームの右側には、注文に製品を追加するためのセクション(実際には別のフォーム)があります。ユーザーは注文のプロパティに入力し(上記の箇条書きを参照)、製品を注文に追加します。

注文の合計価格は、この注文に追加されたすべての製品の価格の合計になります。そのため、追加された製品のリストが変更された場合、その値は正しい合計価格で更新される可能性があります。同時に、このフィールドは編集可能である必要があります。これは、状況によっては、ユーザーが製品の実際の合計価格に関係なく、合計価格を変更できる必要があるためです。同じことが税率とお金のフィールドにも当てはまります。デフォルトの状況に基づいて正しい値を自動的に入力する必要があるため、ユーザーは少ないフィールドに入力する必要があり、自動的に入力された値をそのままにしておくことができます。

もちろん、これは矛盾しています。一方で、ユーザーがフォームで忙しい間、フィールドは計算された値で埋められるはずです。一方、ユーザーが値を変更できるのは、フォームが再計算して自動フィールドに入力するたびにユーザー値が上書きされるという問題が発生しないことです。

私は計算ボタンか何かを考えていましたが、これは私にはあまりきれいではないようです。目標は、フォームをできるだけスマートにし、ユーザーが入力、考え、計算をできるだけ少なくすることです。

モックアップ: - Mockup image

2
user2190492

私の経験では、割引が別の追加されたラインアイテムである(別の製品であるかのように)このようなフォームを見たことがあります。したがって、製品は「割引」と表示され、価格はマイナスの値「-10%」または「-$ 10」になります。したがって、唯一の手動フィールドは割引「価格」であり、他のすべては自動計算されます。

2
Davbog