0

C1、C2、C3..to CX というラベルが付いた X 個の列を含むフォームがあります。「平均」というラベルの付いた列と、「ターゲット」というラベルの付いた別の列もあります。「平均」列は、列 C1 から CX の各行の平均を見つけます。ユーザーがフォームに入力している間に「平均」列が動的に変化することは可能ですか? もしそうなら、どのように?

それが不可能な場合、編集された C1-CX 値でフォームを送信するときに、「平均」列の値を更新するにはどうすればよいですか?

平均に対処する方法に関するヒントを探しているだけです。MYSQL データベースに保存する定義済みのフィールドを持つ C1-CX 列を既に使用しています。

4

3 に答える 3

3

CX フォーム フィールド値のいずれかが変更されたときにトリガーされるイベント ハンドラーを追加し (ユーザーが値を変更した場合など)、平均を再計算して平均列に表示します。

CXフォームが入力であると仮定すると、おそらく次のようなものです。

document.getElementById("C1").addEventListener("input", function(){
    // Any time the user changes a value in form 'C1',
    // this function will be called so you can re-calculate
    // a new average and stuff...
});
于 2013-08-07T22:25:48.147 に答える
0

mysql トリガーを使用Averageして、レコードが更新されたときにフィールドを自動的に更新します。

データベースでこのトリガーを実行します (例: 3CXフィールド):

DELIMITER $$
CREATE TRIGGER `trigger_name` BEFORE UPDATE ON `table_name`
    FOR EACH ROW BEGIN
        SET NEW.Average = (NEW.C1 + NEW.C2 + NEW.C3) / 3;
    END;
$$
DELIMITER ;

また、mysql トリガーの紹介も参考になるかもしれません: http://net.tutsplus.com/tutorials/databases/introduction-to-mysql-triggers/

于 2013-08-07T23:08:23.283 に答える