Archief - decimal point probleempje

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

woony

Legacy Member
hallo,

ben bezig in asp/vb.net webapp.

nu heb ik een on lostfocus event nodig. Heb ik geen roundtrip naar mijn server voor nodig is geen logische handeling voor de gebruiker ook. Dus heb ik uiteraard gekozen om dit met javascript te gaan doen adhv het onblur event.

setup:
3 textboxes. waar enkel nummers en , of punt in kunnen in gegeven worden
bij onblur van de eerste 2 als beide velden ingevuld zijn moet in het 3de het product komen.

Allemaal geen probleem het werkt, maar enkel als ik "." als decimal gebruik.
dus deed ik een replace van , naar . in mn functie om sowieso een punt te hebben bij berekening maar dat doet hij nog niet.

Iemand suggesties?
Alvast bedankt.

Mijn functie, wat slordig :) thx in advance
Code:
 function calculateTotal(){
        var amount = document.getElementById('form1').txtProdAmount.value;
        amount.replace(',','.');
        var price = document.getElementById('form1').txtProdUnitPrice.value;
        price.replace(',','.');
        if (amount != '' )
        {
            if (price != '' )
            {
                document.getElementById('form1').txtProdTotalPrice.value = Number(amount) * Number(price);
            }
        }
        }

mijn 3 tekstkoten als het er toe doet... asp:textboxes. met ajax filters
Code:
<td><asp:TextBox ID="txtProdAmount" runat="server" onBlur="calculateTotal();"></asp:TextBox>
                    <cc1:FilteredTextBoxExtender ID="txtProdAmount_FilteredTextBoxExtender" 
                        runat="server" FilterType="Custom, Numbers" TargetControlID="txtProdAmount" 
                        ValidChars=",.">
                    </cc1:FilteredTextBoxExtender>
                </td>
                <td><asp:TextBox ID="txtProdUnitPrice" runat="server" onBlur="calculateTotal();"></asp:TextBox>
                    <cc1:FilteredTextBoxExtender ID="txtProdUnitPrice_FilteredTextBoxExtender" 
                        runat="server" FilterType="Custom, Numbers" TargetControlID="txtProdUnitPrice" ValidChars=",.">
                    </cc1:FilteredTextBoxExtender>
                </td>
                <td><asp:TextBox ID="txtProdTotalPrice" runat="server"></asp:TextBox>
                    <cc1:FilteredTextBoxExtender ID="txtProdTotalPrice_FilteredTextBoxExtender" 
                        runat="server" TargetControlID="txtProdTotalPrice" FilterType="Custom, Numbers" ValidChars=",.">
                    </cc1:FilteredTextBoxExtender>
                </td>

MennovdH

Legacy Member
Je doet geen assign van je amount en price variabelen:

amount = amount.replace(',','.');
price = price.replace(',','.');

Ik weet ook niet zeker of het verstandig is om erop te rekenen dat je serverside ID's hetzelfde blijven aan de clientside. Zodra je een container eromheen zet verandert die natuurlijk.

Menno

woony

Legacy Member
MennovdH zei:
Je doet geen assign van je amount en price variabelen:

amount = amount.replace(',','.');
price = price.replace(',','.');

Ik weet ook niet zeker of het verstandig is om erop te rekenen dat je serverside ID's hetzelfde blijven aan de clientside. Zodra je een container eromheen zet verandert die natuurlijk.

Menno
ah ja tuurlijk :) heb al een tijdje niks meer gedaan in javascript. ja id's blijven hetzelfde. heb er nog zitten in een repeater , daar kan ik niet aan maar dat is nog geen zo'n probleem.
alvast bedankt. ik probeer het even uit
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan