Revision 0c31c55d
Von Kivitendo Admin vor fast 11 Jahren hinzugefügt
templates/webpages/gl/form_header.html | ||
---|---|---|
8 | 8 |
{ |
9 | 9 |
var accno = document.getElementById('accno_' + row); |
10 | 10 |
var taxkey = accno.options[accno.selectedIndex].value; |
11 |
var reg = /--([0-9]*)/;
|
|
11 |
var reg = /^(.*?)--(\d*)$/;
|
|
12 | 12 |
var found = reg.exec(taxkey); |
13 |
var index = found[1]; |
|
14 |
index = parseInt(index); |
|
15 |
var tax = 'taxchart_' + row; |
|
16 |
var taxkeyposition = taxkey.lastIndexOf(found[0]); |
|
17 |
var account = taxkey.substr(0, taxkeyposition); |
|
13 |
var account = found[1]; |
|
14 |
var default_tax_id = found[2]; |
|
18 | 15 |
|
19 | 16 |
$.ajax({ |
20 | 17 |
url: 'gl.pl?action=get_tax_dropdown', |
21 | 18 |
data: { accno: account, |
22 |
selected_index: index},
|
|
19 |
selected_tax_id: default_tax_id},
|
|
23 | 20 |
dataType: 'html', |
24 | 21 |
success: function (new_html) { |
25 | 22 |
$("#taxchart_" + row).html(new_html); |
templates/webpages/gl/update_tax_accounts.html | ||
---|---|---|
1 |
[% USE L %] |
|
1 | 2 |
[% FOR row = TAX_ACCOUNTS %] |
2 |
<option value='[% row.id %]--[% row.rate %]' [% IF row.id == select_index %]selected[% END %]>[% row.taxdescription %] %</option>
|
|
3 |
<option value='[% row.id %]--[% row.rate %]'[% IF row.id == selected_tax_id%] selected[% END %]>[% row.taxdescription %] %</option>
|
|
3 | 4 |
[% END %] |
Auch abrufbar als: Unified diff
Dialogbuchen: Bug in updateTaxes behoben und Code vereinfacht
im Javascript hieß die Variable selected_index, im Template
select_index. Beide wurden umbenannt in default_tax_id.
Der Value des Konto-Dropdowns enthält Daten in der Form "accno--tax_id".
Diese beiden Information werden per JS geparsed, und reichen schon aus,
damit der der ajax-Aufruf bei Wechsel des Kontos das entsprechende
Steuerdropdown austauschen und mit der Defaultsteuer des neuen Kontos
vorbelegen kann.