亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js遇到了“詭異”的現象

js遇到了“詭異”的現象

FFIVE 2019-04-20 14:15:34
這是我寫的一個向數組添加元素的函數 function addProject(whereToAdd){     var winObj = $("#winProject");     var yesButton = winObj.find(".yes").eq(0);     for( var j = 0 ; j < winObj.find("input").length ; j++ ) //清除舊值         winObj.find("input").eq(j).val("");     winObj.slideDown(100);     yesButton.click(function(){         var projectName = $("#projectName").val();         if( projectName != "" ){             var projectMoney = $("#projectMoney").val() ? parseInt($("#projectMoney").val()) : 0;              var project = new Project(projectName,projectMoney);             whereToAdd.push(project);             winObj.slideUp(200);         }else{             alert("還沒有填項目名?。?quot;);         }     }); }這是調用他的地方 $("#addProject").click(function(){         addProject(projectArr);         print(projectArr);     });這是測試輸出,為啥這么詭異 為啥還一次比一次多了?我期待的是一次存一個
查看完整描述

5 回答

?
慕絲7291255

TA貢獻1859條經驗 獲得超6個贊

你看下你的projectArr是不是有啥問題


查看完整回答
反對 回復 2019-05-13
?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

你是一次性全部添加進去還是點一次添加一個?你只push不清空,前面的數據依舊存在array里面啊,那肯定是一次比一次多啊


查看完整回答
反對 回復 2019-05-13
?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

每一次都初始化一次就可以了,你是想存到數據庫中的話,直接在print(projectArr) 這發請求就可以了,這樣數據應該是你想要的。

  $("#addProject").click(function() {
    var projectArr = [];
    addProject(projectArr);
    print(projectArr);
    $.ajax({
        url: "/**",
        mothod: 'POST',
        data: JSON.stringfy(projectArr)
    });
  });


查看完整回答
反對 回復 2019-05-13
?
梵蒂岡之花

TA貢獻1900條經驗 獲得超5個贊

那個。。謝謝大家的熱心回答!好激動,因為大家都回答的那么認真!
由于當時比較著急用,然后csdn這邊好像沒刷新,我還以為沒提交上去呢,就找朋友問
朋友給了我一個令人驚訝的解決方案,然后,盡然出奇的奏效。
就是,把jq的click()換成原生js的onclick,結果啥問題都沒有了。。
看來是我對jq理解不夠,我會再認真讀讀各位的回復的,哇 大家真的好認真

查看完整回答
反對 回復 2019-05-13
  • 5 回答
  • 0 關注
  • 558 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號