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

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

Jquery中繼器刪除項目不更新值

Jquery中繼器刪除項目不更新值

當年話下 2024-01-18 15:01:09
我正在使用這個jquery 中繼器。我對表單的每次加法使用自定義計算,例如將一個輸入與另一個輸入相乘,然后得出乘法結果的總和。問題是,當我們單擊刪除時,它只是隱藏該行,但不刪除該項目的值,當我們刪除另一個項目時,它將刪除隱藏的第一個項目,并且我的計算得到更新。我檢查刪除項目時的類數,第一次刪除時它不會減少,第二次刪除時它總是減少,如何完全刪除該行及其值?var _CalTotal = function () {console.log($(".billitem_quantity").length );//Calculate total of quantityvar total_quantity = 0;$(".billitem_quantity").each(function(){    total_quantity += parseFloat($(this).val()); });$('#itemquantity_total').val(total_quantity.toFixed(2));**//Calculate total of amount**var total_amount = 0;$(".billitem_total").each(function(){    total_amount += parseFloat($(this).val());});$('#bill_total').val(total_amount.toFixed(2));console.log('test');}下面是隱藏的代碼,hide: function(deleteElement) {      Swal.fire({    title: "Are you sure to cancel this order?",    text: "You will not able to revert this",    icon: "question",    showCancelButton: true,    confirmButtonText: "Yes, delete it!",    cancelButtonText: "No, revert it!",    reverseButtons: true,    }).then(function(result) {    if (result.value) {        $(this).slideUp(deleteElement);                 //I guess something is missing here to delete that item with first delete fire.              _CalTotal();  //Here i am calling calltotal function.    } else if (result.dismiss === "cancel") {    }});                                                  },
查看完整描述

1 回答

?
犯罪嫌疑人X

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

經過一些調試后,我發現設置setTimeout()1 秒可以解決您的問題。這意味著某些代碼是在后臺異步處理的。因此,您需要一個回調函數或一個承諾。


您可以通過添加slideUp()回調函數來做到這一點:


hide: function(deleteElement) {? ? ??

Swal.fire({

? ? title: "Are you sure to cancel this order?",

? ? text: "You will not able to revert this",

? ? icon: "question",

? ? showCancelButton: true,

? ? confirmButtonText: "Yes, delete it!",

? ? cancelButtonText: "No, revert it!",

? ? reverseButtons: true,

? ? }).then(function(result) {

? ? if (result.value) {


? ? ? ? $(this).slideUp(function(){

? ? ? ? ? deleteElement();

? ? ? ? ? _CalTotal();

? ? ? ? );


? ? } else if (result.dismiss === "cancel") {


? ? }

});? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

},


查看完整回答
反對 回復 2024-01-18
  • 1 回答
  • 0 關注
  • 129 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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