2016-10-21 5 views
0

私は拳の時間のためのボタンをクリックすると、以下のように、フォームはクッキーに保存された:ウェブページを更新しなかった場合、なぜクッキーがjsonを再度保存するのですか?

1=[{"name":"1","num":"1","classAge":"1","score":"1"}]; 

、その後、私はクリアするために、「」と入力の値を設定します。 しかし、私は、ウェブページをさっぱりするF5せずにフォームに記入した場合、私は意志の前に保存されたデータは、再び保存:

2=[{"name":"1","num":"1","classAge":"1","score":"1"},{"name":"2","num":"2","classAge":"2","score":"2"}]; 

そして、私は次のように記載されているwhy.Theコードを知りませんが。

oSubmit.addEventListener("click",function(e){ 
     oEvent = e||event; 
     oEvent.preventDefault(); 
     iNum = oInput[1].value; 
     var stu = new Object;       
     stu = student(oInput[0].value,oInput[1].value,oInput[2].value,oInput[3].value); 
     console.log(typeof stu); 
     array1.push(stu);      
     sJson = JSON.stringify(array1);    
     alert("OK!"); 
     for (var i=0;i<oInput.length;i++) {   
      oInput[i].value=""; 
     } 
     setCookie(iNum,sJson,7); 
     console.log(document.cookie); 
    }) 
+0

この学生機能は何をしていますか?すべてのコードを必ず入力してください。 –

+0

示されているコードは決して 'array1'変数を決してリセットしないので、関数を呼び出すたびに、その配列に既に入っているものに追加してから、クッキーにすべてを保存します。関数内に 'var array1 = []'を追加することもできますが、現在の値を保存したいだけなら配列はまったく必要ありません。 'JSON.stringify(stu)'を保存するだけです。 '.addEventListener()'、 'stu = new Object;'を使用している場合、 'oEvent = e || event;'は必要ありません。 。 – nnnnnn

+0

@nnnnnnはい、それは問題を作成したarray1です。ありがとう〜 – legend

答えて

0

私はNNNNNNのコメントとconsole.logalertはデバッグのためであるという仮定に基づいて回答を形成しています。 私はまた、他のプログラマはコードがよりよく理解することができるようにあなたにいくつかの助言を与えることをoppurtunityを取りたい

oSubmit.addEventListener("click", function(e) { 
    e.preventDefault(); 
    var studentResult = student(oInput[0].value, oInput[1].value, oInput[2].value, oInput[3].value); 
    setCookie(oInput[1].value, JSON.stringify([studentResult]), 7); 

    for (var i = 0; i < oInput.length; i++) { 
     oInput[i].value = ""; 
    } 
}) 

(そうでない場合は、私はできない、それがために何を想像することができます)。

  • 関数studentが何をしているかを半定量的に推測することはできません。 「生徒」は名詞であり、その前に動詞を置くと、はっきりと表示されます(getStudentなど)
  • oInputは何であるかを特定できません。 "o"とは何ですか?
  • あなたは提示された範囲外で宣言された(おそらく/うまくいけば)変​​数を使用しています。その情報がなければ、問題の解決方法に関するアドバイスは推測です。

これらの提案をご検討いただければ幸いです。

関連する問題