View Full Version : Calling a function
kady63
10-19-2002, 06:07 PM
I am making an order form where the user enters an
item number, description, quantity and price. The form should calculate the extended price, subtotal , sales tax and grand total. I defined the functions but dont understand how to call them and where in the code to call them. Any help would be greatly appreciated. I am attaching the file that I have completed this far.
Thanks,
Kady
chrismiceli
10-19-2002, 09:03 PM
you put this before you close the form
<input type="button" onClick="whatever functions you want" value="calculate">
sorry i can't tell you more, i didn't really look at your code that much.
adios
10-20-2002, 05:00 AM
You can 'automate' forms like this much more, having unit prices fill in automatically and so on - but, here's a general idea of how to proceed:
<html>
<head>
<!-- Kathy Rhome -->
<!-- Formksr3.HTML -->
<title>Kates Aromatherapy Form Project 3</title>
<script type="text/javascript" language="javascript">
var tax = 0.06;
var shipping = 5.95;
function currency(anynum) {
anynum = eval(anynum);
var dStr, pStr, dLen, workNum = Math.abs((Math.round(anynum*100)/100)), workStr = '' + workNum;
if (workStr.indexOf('.') == -1) workStr+= '.00';
dStr = workStr.substr(0,workStr.indexOf('.'));dNum=dStr-0
pStr = workStr.substr(workStr.indexOf('.'));
while (pStr.length<3) pStr+= '0';
if (dNum>=1000) {
dLen = dStr.length
dStr = parseInt('' + (dNum/1000)) + ',' + dStr.substring(dLen-3,dLen);
}
if (dNum>=1000000) {
dLen = dStr.length;
dStr = parseInt('' + (dNum/1000000)) + ',' + dStr.substring(dLen-7,dLen);
}
retval = dStr + pStr
if (anynum<0) retval='(' + retval + ')';
return ' $' + retval;
}
function getExtendedPrice(n) {
var tempval = 0, f = document.aromaform;
var quantity = parseFloat(f['qty' + n].value);
var price = parseFloat(f['price' + n].value);
if (quantity && price) {
f['extprice' + n].value = currency(quantity * price);
for (var n=1; n<5; ++n) if (parseFloat(f['extprice' + n].value.substring(2)))
tempval += parseFloat(f['extprice' + n].value.substring(2));
f['subtot'].value = currency(tempval);
f['salestax'].value = currency(tempval * tax);
f['ship'].value = currency(shipping);
f['grandtot'].value = currency(tempval + (tempval * tax) + shipping);
}
}
</script>
</head>
<body text="#ffffff" bgcolor="#663300">
<div align="center">
<center>
<h2><font color="#ff9933" face="times new roman">
&#149; KATES AROMATHERAPY ORDER CATALOG, INC. &#149;</font></h2>
<hr width="50%">
<font size="4" face="times new roman">
2444 Homeworth Rd.
<br>
Alliance, OH 44601
<br>
330 525-7939
</font>
</center>
<hr width="50%"><br>
<font size="3"><font face="times new roman">
Please enter the following information so that we may process your order.
</font>
<br>
<form name="aromaform">
<font size="3"><font face="times new roman">
<table cellspacing="1" cellpadding="0" border="1" bordercolor="#ffffff" bgcolor="#cc6633">
<tr>
<td width="100%">
<table width="100%" cellspacing="5" cellpadding="5" border="0">
<tr>
<td height="5" bgcolor="#000000"><spacer type="block" height="1"></td>
</tr><tr>
<td><b>SOLD TO:</b></td>
</tr><tr>
<td height="5" bgcolor="#000000"><spacer type="block" height="1"></td>
</tr><tr>
<td align="right" nowrap>Company Name:&nbsp;<input type="text" name="CoName1" size="30"></td>
</tr><tr>
<td align="right">Address:&nbsp;<input type="text" name="AdName1" size="30"></td>
</tr><tr>
<td align="right">City, State, Zip:&nbsp;<input type="text" name="CSZName1" size="30"></td>
</tr><tr>
<td align="right" nowrap>Contact Person:&nbsp;<input type="text" name="CPName1"size="30"></td>
</tr><tr>
<td align="right" nowrap>Phone Number:&nbsp;<input type="text" name="PhNum1"size="30"></td>
</tr><tr>
<td height="5" bgcolor="#000000"><spacer type="block" height="1"></td>
</tr><tr>
<td><b>SHIP TO:</b></td>
</tr><tr>
<td height="5" bgcolor="#000000"><spacer type="block" height="1"></td>
</tr><tr>
<td align="right" nowrap>Company Name:&nbsp;<input type="text" name="CoName2" size="30"></td>
</tr><tr>
<td align="right">Address:&nbsp;<input type="text" name="AdName2"size="30"></td>
</tr><tr>
<td align="right">City, State, Zip:&nbsp;<input type="text" name="CSZName2" size="30"></td>
</tr><tr>
<td align="right" nowrap>Contact Person:&nbsp;<input type="text" name="CPName2"size="30"></td>
</tr><tr>
<td align="right" nowrap>Phone Number:&nbsp;<input type="text" name="PhNum2"size="30"></td>
</tr><tr>
<td height="5" bgcolor="#000000"><spacer type="block" height="1"></td>
</tr><tr>
<td><b>INVOICE TO:</b></td>
</tr><tr>
<td height="5" bgcolor="#000000"><spacer type="block" height="1"></td>
</tr><tr>
<td align="right">Company Name:&nbsp;
<input type="text" name="CoName2" size="30"></td>
</tr><tr>
<td align="right">Address:&nbsp;
<input type="text" name="AdName2" size="30"></td>
</tr><tr>
<td align="right">City, State, Zip:&nbsp;
<input type="text" name="CSZName2"size="30"></td>
</tr><tr>
<td align="right">Contact Person:&nbsp;
<input type="text" name="CPName2"size="30"></td>
</tr><tr>
<td align="right">Phone Number:&nbsp;
<input type="text" name="PhNum2"size="30"></td>
</tr></table></font>
</td></tr><tr>
<td width="100%">
<font size="3"><font face="times new roman">
<table width="100%" cellspacing="0" cellpadding="5" border="0">
<tr>
<td width="100%" height="40" align="center" colspan="5">
<font size="3" face="times new roman"><b>Enter the items you wish to purchase.</b></font></td>
</tr><tr>
<td>Item Number</td>
<td>Description</td>
<td>QTY</td>
<td>Price</td>
<td>PriceExt</td>
</tr><tr>
<td><input type="text" name="item1" size="12"></td>
<td><input type="text" name="descript1" size="30"></td>
<td><input type="text" name="qty1" size="5" onchange="getExtendedPrice(1)"></td>
<td><input type="text" name="price1" size="6" onchange="getExtendedPrice(1)"></td>
<td><input type="text" name="extprice1" size="10" readonly="readonly"></td>
</tr><tr>
<td><input type="text" name="item2" size="12"></td>
<td><input type="text" name="descript2" size="30"></td>
<td><input type="text" name="qty2" size="5" onchange="getExtendedPrice(2)"></td>
<td><input type="text" name="price2" size="6" onchange="getExtendedPrice(2)"></td>
<td><input type="text" name="extprice2" size="10" readonly="readonly"></td>
</tr><tr>
<td><input type="text" name="item3" size="12"></td>
<td><input type="text" name="descript3" size="30"></td>
<td><input type="text" name="qty3" size="5" onchange="getExtendedPrice(3)"></td>
<td><input type="text" name="price3" size="6" onchange="getExtendedPrice(3)"></td>
<td><input type="text" name="extprice3" size="10" readonly="readonly"></td>
</tr><tr>
<td><input type="text" name="item4" size="12"></td>
<td><input type="text" name="descript4" size="30"></td>
<td><input type="text" name="qty4" size="5" onchange="getExtendedPrice(4)"></td>
<td><input type="text" name="price4" size="6" onchange="getExtendedPrice(4)"></td>
<td><input type="text" name="extprice4" size="10" readonly="readonly"></td>
</tr><tr>
<td height="10" colspan="5">&nbsp;</td>
</tr><tr>
<td width="100%" align="right" colspan="5">
SubTotal <input type="text" name="subtot" size="10" readonly="readonly"></td>
</tr><tr>
<td width="100%" align="right" colspan="5">
Sales Tax <input type="text" name="salestax" size="10" readonly="readonly"></td>
</tr><tr>
<td width="100%" align="right" colspan="5">
Shipping & Handling <input type="text" name="ship" size="10" readonly="readonly"></td>
</tr><tr>
<td width="100%" height="40" align="right" valign="top" colspan="5">
Grand Total <input type="text" name="grandtot" size="10" readonly="readonly"></td>
</tr></table></font>
</td></tr></table>
</form>
</div>
</body>
</html>
vBulletin® v3.8.2, Copyright ©2000-2012, Jelsoft Enterprises Ltd.