Thank you

On Wednesday, March 29, 2023 at 11:11:57 AM UTC+2 Leonel Câmara wrote:

> That's a good solution, one has to be careful to remember that javascript 
> is executed in the client and python in the server so basically you should 
> only really use python to give javascript some initial data that it needs-
>
> A quarta-feira, 29 de março de 2023 à(s) 08:38:04 UTC+1, mostwanted 
> escreveu:
>
>> In my head it was all supposed to work...but ultimately this worked 
>> <script>
>>         function calculateSubtotal(input, index) {
>>             var price = parseFloat(input.value);
>>            * var quantity = 
>> parseInt(input.parentNode.nextElementSibling.innerHTML);*
>>             var subtotal = parseFloat(price * quantity);
>>             var subtotalElement = document.getElementById("subtotal" + 
>> index);
>>             if (price == 0) {
>>                 // If price is 0, display the hidden span with text "Not 
>> Available" in red
>>                 subtotalElement.innerHTML = "";
>>                 var notAvailableSpan = 
>> input.parentNode.previousElementSibling.querySelector("span.hidden");
>>                 notAvailableSpan.style.display = "inline";
>>                 subtotalElement.innerHTML = subtotal.toFixed(2);
>>
>>             } else {
>>                 var notAvailableSpan = 
>> input.parentNode.previousElementSibling.querySelector("span.hidden");
>> notAvailableSpan.style.display = "none";
>> subtotalElement.innerHTML = subtotal.toFixed(2);
>>                 updateGrandTotal()
>> }
>> }
>>
>> On Tuesday, March 28, 2023 at 9:00:35 PM UTC+2 Leonel Câmara wrote:
>>
>>> Looks like you're trying to mix javascript and python code in a quite 
>>> impossible way. Just pass qty instead of index to the function and use that 
>>> as the quantity.   
>>>
>>> A domingo, 26 de março de 2023 à(s) 15:04:29 UTC+1, mostwanted escreveu:
>>>
>>>> I want to be able to calculate subtotal by multiplying quantity and 
>>>> price but I cant because 
>>>>     *var quantity = parseInt("{{=details.quantities[index]}}");* in 
>>>> the code below carries the value of 1 and it does not change. Please 
>>>> assist 
>>>> me identify what could be wrong here and how can i rectify it?
>>>>
>>>> *Model:*
>>>> db.define_table('client_order'),
>>>>     Field('quoted_item','list:string', required=True),
>>>>     Field('quantities','list:string', required=True))
>>>>
>>>> *View:*
>>>>     {{for index, (item, qty) in enumerate(zip(details.quoted_item, 
>>>> details.quantities)):}}
>>>>         <tr>
>>>>             <td>{{=item}}</td>
>>>>             <td><input type="text" onchange="calculateSubtotal(this, 
>>>> {{=index}})" /></td>
>>>>             <td>{{=qty}}</td>
>>>>             <td><span id="subtotal{{=index}}"></span></td>
>>>>         </tr>
>>>>     {{pass}}
>>>>
>>>> <script>
>>>>     function calculateSubtotal(input, index) {
>>>>     var price = parseFloat(input.value);
>>>> *    var quantity = parseInt("{{=details.quantities[index]}}");*
>>>>     var subtotal = parseFloat(price * quantity);
>>>>     document.getElementById("subtotal" + index).innerHTML = 
>>>> subtotal.toFixed(2);
>>>>     updateGrandTotal();
>>>>         console.log(parseFloat("{{=details.quantities[index]}}"));
>>>> }
>>>> </script>
>>>>
>>>> Regards
>>>>
>>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
You received this message because you are subscribed to the Google Groups 
"web2py-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to web2py+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/web2py/a9ce6e36-b073-4dd6-b154-1d6849abf0d9n%40googlegroups.com.

Reply via email to