1

値を入力するフォームを含む Web ページがあります。私のjavascriptは、送信ボタンがクリックされたときに下部に入力された値を合計します(onclick="runTotal(this.form))が、フォームを合計するだけでなく、値に基づいて特定のdivを再表示する必要があります合計。

基本的に、フィールド「合計」が次の非表示divのいずれかに等しい場合に必要です

0-85 unhide div id 赤 125-86 unhide div id yellow 126 以上 unhide div id green

ご協力いただきありがとうございます。

4

3 に答える 3

0

表示される DIV が最初に display:"none" に設定されていることを確認してください。

var oldRunTotal = runTotal; 
runTotal = function(form){
  var id = "green",
      total = oldRunTotal(form);
  if (total < 0) return;
  else if (total < 86) id = "red";
  else if (total < 126) id = "yellow";
  document.getElementById(id).style.display = "block";
};
于 2013-03-28T20:42:28.973 に答える
0

を使用して、divを最初に非表示にすることができます

<div id="your-div" hidden></div>

jquery を使用して、その div を非表示および再表示することをお勧めします。次のように簡単です。

$("#your-div").show();

その行を runTotal メソッドに入れるだけです。

于 2013-03-28T20:34:17.840 に答える
0

シンプルで堅牢なアプローチには jQuery を使用します。

$(document).ready(function() {
    $('#totalBox').change(function () {
        var total = $(this).val();
        if(total <= 85) { $("#red").toggle(); }
        else if(total > 85 && <= 125) { $("#yellow").toggle(); }
        else if(total > 125) { $("#green").toggle(); }
    }
});

どこ

#totalBox = your "total" input textbox's ID
于 2013-03-28T20:35:43.423 に答える