2012-10-22 34 views
0

我有一張發票計算器,我需要在我要應用的IVA百分比的不同選擇上更改我的發票總金額。在我的選擇列表中更改計算百分比

這是我的example,你可以看到我創建了一個選擇可編輯的,如果你點擊IVA 21%,你會得到2選項:Iva 21%或NO IVA。現在總金額按IVA的21%計算。 我如何使我的總金額不計算21%,當我選擇沒有?

這是我的編輯選擇

$('.editable_selectiva').editable(function(value, settings) { 
      console.log(this); 
      console.log(value); 
      console.log(settings); 
      return(value); 
      }, { 
       data : "{'IVA 21%':'IVA 21%','NO IVA':'NO IVA'}", 
      type : 'select', 
      style : "inherit", 
     }); 

回答

1

我已經部分地解決你的問題。我只是改變了方法理貨位:

function tally(selector) { 
    var total = 0; 
    $('p.editable_number').each(function() { 
     total += parseInt($(this).text()) || 0; 
     $('#subtotal').html(total); 
     if ($('.editable_selectiva').text() === "NO IVA") { 
      $('#total').html(0); 
      $('#total1').html(total); 
     } 
     else { 
      $('#total').html(total*0.21); 
      $('#total1').html(total*1.21); 
     } 
    }) 
} 

儘管這不是它的工作原理cleaniest方法(請嘗試更改爲「NO IVA」,然後添加一個新的產品,你會看到,它的作品)。 您現在唯一需要做的是以某種方式在用戶將選擇器從「IVA 21」更改爲「NO IVA」時執行計數方法。

建議:考慮使用Backbonejs MVC框架來構建JavaScript應用程序。它爲事件處理提供了很好的工具,並允許前端開發人員使用Javascript構建更清潔的Web應用程序。

+0

它的工作原理,我試圖當沒有IVA被選中時發生事件。這是我嘗試使用的代碼:$('。editable_selectiva')。text()===「NO IVA」)。change(function(){('#total')。html(0.21); $('#total1')。html(total); });你怎麼看?非常感謝 – Koala7

+1

在我看來,你應該做什麼來觸發事件是在$('。editable_selectiva')調用可編輯時添加一個「onSubmit」函數。editable(...) 我猜你正在使用可編輯jQuery插件,所以請嘗試查看文檔http://www.arashkarimzadeh.com/jquery/7-editable-jquery-plugin.html –

+0

謝謝,我看看,讓你知道如何實現它 – Koala7