Javascript not working right on FIREFOX!

Please support our JavaScript / DHTML / AJAX advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
Thread Solved

Join Date: Dec 2008
Posts: 24
Reputation: jeffreyjs is an unknown quantity at this point 
Solved Threads: 0
jeffreyjs jeffreyjs is offline Offline
Newbie Poster

Javascript not working right on FIREFOX!

 
0
  #1
Jan 6th, 2009
Hi,

I have this website which uses javascript to compute some mathematics... However, the script appear not to be working on firefox whereas the I.E and safari are working well, can someone help me with this, does Firefox have problems executing javascript? Thanks...

the below code is where the problem occurs

<script language="javascript">
function order(form1) {

var Sub;
var GST;
var Total;

Sub = parseFloat(form1.txtEPM430.value) + parseFloat(form1.txtEPM400.value) + parseFloat(form1.txtBPM100.value) + parseFloat(form1. txtBPM400.value) + parseFloat(form1.txtIRBody.value) + parseFloat(form1.txtIRFore.value) + parseFloat(form1.txtIREar.value) + parseFloat(form1.txtNRSham2.value) + parseFloat(form1.txtNRSham8.value) + parseFloat(form1.txtNRWash2.value) + parseFloat( form1.txtNRWash8.value) + parseFloat(form1.txtNRBath2.value) + parseFloat(form1.txtNRBath8.value) + parseFloat(form1. txtOutdoor.value) + parseFloat(form1.txtIndoor.value) + parseFloat(form1.txtPatch.value);

form1.txtSub.value = Sub.toFixed(2);

GST = Sub * 0.07;
form1.txtGST.value = GST.toFixed(2);

Total = Sub + GST;
form1.txtTotal.value = Total.toFixed(2);

}

</script>
Last edited by jeffreyjs; Jan 6th, 2009 at 4:58 am.
Reply With Quote Quick reply to this message  
Join Date: Dec 2005
Posts: 5,850
Reputation: Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute Salem has a reputation beyond repute 
Solved Threads: 749
Team Colleague
Salem's Avatar
Salem Salem is offline Offline
Void main'ers are DOOMed

Re: Javascript not working right on FIREFOX!

 
0
  #2
Jan 6th, 2009
So, is the "doesn't work" some kind of rounding error in the result, caused by all those floating point operations?

Or is the "doesn't work" something more serious, like not running at all?
Reply With Quote Quick reply to this message  
Join Date: Dec 2008
Posts: 24
Reputation: jeffreyjs is an unknown quantity at this point 
Solved Threads: 0
jeffreyjs jeffreyjs is offline Offline
Newbie Poster

Re: Javascript not working right on FIREFOX!

 
0
  #3
Feb 5th, 2009
Hi, the script above actually does some calculation and display it in the textbox... below are the complete code, u may visit www.kanpei.com.sg/orderNow.html and check it out if possible, coz i am really lost....

  1. <script type="text/JavaScript">
  2. <!--
  3. function MM_callJS(jsStr) { //v2.0
  4.   return eval(jsStr)
  5. }
  6. //-->
  7. </script>
  8. <body>
  9. <script language="javascript">
  10. function order(form1) {
  11.  
  12. var Sub;
  13. var GST;
  14. var Total;
  15.  
  16. Sub = parseFloat(form1.txtEPM430.value) + parseFloat(form1.txtEPM400.value) + parseFloat(form1.txtBPM100.value) + parseFloat(form1. txtBPM400.value) + parseFloat(form1.txtIRBody.value) + parseFloat(form1.txtIRFore.value) + parseFloat(form1.txtIREar.value) + parseFloat(form1.txtNRSham2.value) + parseFloat(form1.txtNRSham8.value) + parseFloat(form1.txtNRWash2.value) + parseFloat( form1.txtNRWash8.value) + parseFloat(form1.txtNRBath2.value) + parseFloat(form1.txtNRBath8.value) + parseFloat(form1. txtOutdoor.value) + parseFloat(form1.txtIndoor.value) + parseFloat(form1.txtPatch.value);
  17.  
  18. form1.txtSub.value = Sub.toFixed(2);
  19.  
  20. GST = Sub * 0.07;
  21. form1.txtGST.value = GST.toFixed(2);
  22.  
  23. Total = Sub + GST;
  24. form1.txtTotal.value = Total.toFixed(2);
  25.  
  26. }
  27.  
  28. </script>
  29.  
  30. <script language="javascript">
  31. function validate(form1) {
  32. if (form1.txtName.value == "") {
  33. alert("Please Enter your name.");
  34. return false;
  35. }
  36. else if (form1.txtAddress.value == "") {
  37. alert("Please Enter your Address.");
  38. return false;
  39. }
  40. else if (form1.txtContact.value == "") {
  41. alert("Please Enter your Contact No.");
  42. return false;
  43. }
  44. else
  45. return true;
  46. }
  47.  
  48.  
  49.  
  50. </script>
  51.  
  52. <table width="768" border="0" align="center">
  53. <tr>
  54. <td width="762" valign="top"><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="762" height="126">
  55. <param name="movie" value="New.swf" />
  56. <param name="quality" value="high" />
  57. <embed src="New.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="762" height="126"></embed>
  58. </object>
  59. <img src="Images/MenuBar.gif" width="762" height="34" border="0" usemap="#Map" /></td>
  60. </tr>
  61.  
  62. <tr>
  63. <td height="17" bgcolor="#F4C402"><span class="style4">&nbsp;<a href="index.htm">Home</a> &gt; Order Now </span></td>
  64. </tr>
  65. <tr>
  66. <td align="left" valign="top" bgcolor="#0373B6"><table width="762" border="0">
  67. <tr>
  68. <td width="756" height="344" valign="top" bgcolor="#FFFFFF"><table width="756" border="0" align="left">
  69.  
  70. <tr>
  71. <td width="750" bgcolor="#0373B6"><span class="style5">Order Form </span></td>
  72. </tr>
  73. <tr>
  74. <td><form id="form1" name="form1" method="post" action="orderNow.asp">
  75. <span class="style48">If you are interested in purchasing our products, you can simply fill in the form <br />
  76. below and send it to us for processing. </span><br />
  77.  
  78. <br />
  79. <span class="style48">Please fill in all the information for your particulars for contacting purposes. </span><br />
  80. <br />
  81. <table width="750" border="0">
  82. <tr>
  83. <td colspan="2" bgcolor="#FFFFFF" class="style64">Personal Particulars </td>
  84. <td bgcolor="#FFFFFF" class="style5">&nbsp;</td>
  85. <td bgcolor="#FFFFFF" class="style5">&nbsp;</td>
  86.  
  87. <td bgcolor="#FFFFFF" class="style5">&nbsp;</td>
  88. </tr>
  89. <tr>
  90. <td width="80" valign="top" bgcolor="#FFFFFF"><span class="style66"><span class="style70">*</span>Name:</span></td>
  91. <td width="284" bgcolor="#FFFFFF"><input name="txtName" type="text" class="style4" id="txtName" /></td>
  92. <td width="115"><span class="style48">
  93. <label></label>
  94. </span></td>
  95.  
  96. <td width="144"><span class="style48"></span></td>
  97. <td width="105"><span class="style48"></span></td>
  98. </tr>
  99. <tr>
  100. <td valign="top" bgcolor="#FFFFFF"><span class="style66"><span class="style70">*</span>Address:</span></td>
  101. <td bgcolor="#FFFFFF"><textarea name="txtAddress" cols="35" rows="3" class="style67" id="txtAddress"></textarea></td>
  102. <td><span class="style48">
  103.  
  104. <label></label>
  105. </span></td>
  106. <td><span class="style48"></span></td>
  107. <td><span class="style48"></span></td>
  108. </tr>
  109. <tr>
  110. <td valign="top" bgcolor="#FFFFFF"><span class="style66"><span class="style70">*</span>Contact:</span></td>
  111. <td bgcolor="#FFFFFF"><input name="txtContact" type="text" class="style4" id="txtContact" /></td>
  112.  
  113. <td><span class="style48">
  114. <label></label>
  115. </span></td>
  116. <td><span class="style48"></span></td>
  117. <td><span class="style48"></span></td>
  118. </tr>
  119. <tr>
  120. <td valign="top" bgcolor="#FFFFFF"><span class="style66">Email:</span></td>
  121.  
  122. <td bgcolor="#FFFFFF"><input name="txtEmail" type="text" class="style4" id="txtEmail" /></td>
  123. <td><span class="style48">
  124. <label></label>
  125. </span></td>
  126. <td><span class="style48"></span></td>
  127. <td><span class="style48"></span></td>
  128. </tr>
  129. <tr>
  130. <td colspan="2"><span class="style69">*Required Fields </span></td>
  131.  
  132. <td><span class="style48"></span></td>
  133. <td><span class="style48"></span></td>
  134. <td><span class="style48"></span></td>
  135. </tr>
  136. <tr>
  137. <td colspan="2" bgcolor="#0373B6"><div align="center"><span class="style52">Item</span></div></td>
  138. <td bgcolor="#0373B6"><div align="center"><span class="style52">Retail Prices </span></div></td>
  139. <td bgcolor="#0373B6"><div align="center"><span class="style52">Quantity</span></div></td>
  140.  
  141. <td bgcolor="#0373B6"><div align="center"><span class="style52">Amount</span></div></td>
  142. </tr>
  143. <tr bgcolor="#0373B6">
  144. <td colspan="5"><span class="style52">Therapeutic</span></td>
  145. </tr>
  146. <tr bgcolor="#BFE2FF">
  147. <td colspan="2"><span class="style58">Electronic Pulse Massager MB 430 </span></td>
  148.  
  149. <td><span class="style58">S$176.40</span></td>
  150. <td><span class="style58">
  151. <label>
  152. <select name="listEPM430" id="listEPM430" onchange="num=176.40; form1.txtEPM430.value=(parseFloat(num) * form1.listEPM430.value).toFixed(2);MM_callJS('order(form1)')">
  153. <option>Select Quantity</option>
  154. <option value="1">1</option>
  155. <option value="2">2</option>
  156.  
  157. <option value="3">3</option>
  158. <option value="4">4</option>
  159. <option value="5">5</option>
  160. <option value="6">6</option>
  161. <option value="7">7</option>
  162. <option value="8">8</option>
  163.  
  164. <option value="9">9</option>
  165. <option value="10">10</option>
  166. </select>
  167. </label>
  168. </span></td>
  169. <td><span class="style58">
  170. <label>S$
  171. <input name="txtEPM430" type="text" id="txtEPM430" value="0.00" size="7" maxlength="10" readonly="True" style="text-align:right"/>
  172.  
  173. </label>
  174. </span></td>
  175. </tr>
  176. <tr bgcolor="#BFE2FF">
  177. <td colspan="2"><span class="style58">Electronic Pulse Massager (With Heat) MB 400 </span></td>
  178. <td><span class="style58">S$354.90</span></td>
  179. <td><span class="style58">
  180. <select name="listEPM400" id="listEPM400" onchange="num=354.90; form1.txtEPM400.value=(parseFloat(num) * form1.listEPM400.value).toFixed(2);MM_callJS('order(form1)')">
  181.  
  182. <option>Select Quantity</option>
  183. <option value="1">1</option>
  184. <option value="2">2</option>
  185. <option value="3">3</option>
  186. <option value="4">4</option>
  187. <option value="5">5</option>
  188.  
  189. <option value="6">6</option>
  190. <option value="7">7</option>
  191. <option value="8">8</option>
  192. <option value="9">9</option>
  193. <option value="10">10</option>
  194. </select>
  195.  
  196. </span></td>
  197. <td><span class="style58">
  198. S$
  199. <input name="txtEPM400" type="text" id="txtEPM400" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  200. </span></td>
  201. </tr>
  202. <tr bgcolor="#0373B6">
  203. <td colspan="5"><span class="style52">Diagnostic</span></td>
  204. </tr>
  205.  
  206. <tr bgcolor="#BFE2FF">
  207. <td colspan="2"><span class="style58">Blood Pressure Monitor (Wrist) BP 100 </span></td>
  208. <td><span class="style58">S$92.40</span></td>
  209. <td><span class="style58">
  210. <select name="listBPM100" id="listBPM100" onchange="num=92.40; form1.txtBPM100.value=(parseFloat(num) * form1.listBPM100.value).toFixed(2);MM_callJS('order(form1)')">
  211. <option>Select Quantity</option>
  212. <option value="1">1</option>
  213.  
  214. <option value="2">2</option>
  215. <option value="3">3</option>
  216. <option value="4">4</option>
  217. <option value="5">5</option>
  218. <option value="6">6</option>
  219. <option value="7">7</option>
  220.  
  221. <option value="8">8</option>
  222. <option value="9">9</option>
  223. <option value="10">10</option>
  224. </select>
  225. </span></td>
  226. <td><span class="style58">S$
  227. <input name="txtBPM100" type="text" id="txtBPM100" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  228. </span></td>
  229.  
  230. </tr>
  231. <tr bgcolor="#BFE2FF">
  232. <td colspan="2"><span class="style58">Blood Pressure Monitor (Arm) BP 400 </span></td>
  233. <td><span class="style58">S$94.50</span></td>
  234. <td><span class="style58">
  235. <select name="listBPM400" id="listBPM400" onchange="num=94.50; form1.txtBPM400.value=(parseFloat(num) * form1.listBPM400.value).toFixed(2);MM_callJS('order(form1)')">
  236. <option>Select Quantity</option>
  237.  
  238. <option value="1">1</option>
  239. <option value="2">2</option>
  240. <option value="3">3</option>
  241. <option value="4">4</option>
  242. <option value="5">5</option>
  243. <option value="6">6</option>
  244.  
  245. <option value="7">7</option>
  246. <option value="8">8</option>
  247. <option value="9">9</option>
  248. <option value="10">10</option>
  249. </select>
  250. </span></td>
  251. <td><span class="style58">S$
  252. <input name="txtBPM400" type="text" id="txtBPM400" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  253.  
  254. </span></td>
  255. </tr>
  256. <tr bgcolor="#BFE2FF">
  257. <td colspan="2"><span class="style58">IR Body Fat Analyzer NFA 100 </span></td>
  258. <td><span class="style58">S$89.25</span></td>
  259. <td><span class="style58">
  260. <select name="listIRBody" id="listIRBody" onchange="num=89.25; form1.txtIRBody.value=(parseFloat(num) * form1.listIRBody.value).toFixed(2);MM_callJS('order(form1)')">
  261. <option>Select Quantity</option>
  262.  
  263. <option value="1">1</option>
  264. <option value="2">2</option>
  265. <option value="3">3</option>
  266. <option value="4">4</option>
  267. <option value="5">5</option>
  268. <option value="6">6</option>
  269.  
  270. <option value="7">7</option>
  271. <option value="8">8</option>
  272. <option value="9">9</option>
  273. <option value="10">10</option>
  274. </select>
  275. </span></td>
  276. <td><span class="style58">S$
  277. <input name="txtIRBody" type="text" id="txtIRBody" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  278.  
  279. </span></td>
  280. </tr>
  281. <tr bgcolor="#BFE2FF">
  282. <td colspan="2"><span class="style58">IR Forehead Thermometer NFS 100 </span></td>
  283. <td><span class="style58">S$81.90</span></td>
  284. <td><span class="style58">
  285. <select name="listIRFore" id="listIRFore" onchange="num=81.90; form1.txtIRFore.value=(parseFloat(num) * form1.listIRFore.value).toFixed(2);MM_callJS('order(form1)')">
  286. <option>Select Quantity</option>
  287.  
  288. <option value="1">1</option>
  289. <option value="2">2</option>
  290. <option value="3">3</option>
  291. <option value="4">4</option>
  292. <option value="5">5</option>
  293. <option value="6">6</option>
  294.  
  295. <option value="7">7</option>
  296. <option value="8">8</option>
  297. <option value="9">9</option>
  298. <option value="10">10</option>
  299. </select>
  300. </span></td>
  301. <td><span class="style58">S$
  302. <input name="txtIRFore" type="text" id="txtIRFore" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  303.  
  304. </span></td>
  305. </tr>
  306. <tr bgcolor="#BFE2FF">
  307. <td colspan="2"><span class="style58">IR Ear Thermometer TB 100 </span></td>
  308. <td><span class="style58">S$60.90</span></td>
  309. <td><span class="style58">
  310. <select name="listIREar" id="listIREar" onchange="num=60.90; form1.txtIREar.value=(parseFloat(num) * form1.listIREar.value).toFixed(2);MM_callJS('order(form1)')">
  311. <option>Select Quantity</option>
  312.  
  313. <option value="1">1</option>
  314. <option value="2">2</option>
  315. <option value="3">3</option>
  316. <option value="4">4</option>
  317. <option value="5">5</option>
  318. <option value="6">6</option>
  319.  
  320. <option value="7">7</option>
  321. <option value="8">8</option>
  322. <option value="9">9</option>
  323. <option value="10">10</option>
  324. </select>
  325. </span></td>
  326. <td><span class="style58">
  327.  
  328. S$
  329. <input name="txtIREar" type="text" id="txtIREar" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  330. </span></td>
  331. </tr>
  332. <tr bgcolor="#0373B6">
  333. <td colspan="5"><span class="style52">Body Care </span></td>
  334. </tr>
  335. <tr bgcolor="#BFE2FF">
  336. <td colspan="2"><span class="style58">No Rinse Shampoo 2oz </span></td>
  337.  
  338. <td><span class="style58">S$5.05</span></td>
  339. <td><span class="style48">
  340. <select name="listNRSham2" id="listNRSham2" onchange="num=5.05; form1.txtNRSham2.value=(parseFloat(num) * form1.listNRSham2.value).toFixed(2);MM_callJS('order(form1)')">
  341. <option>Select Quantity</option>
  342. <option value="1">1</option>
  343. <option value="2">2</option>
  344. <option value="3">3</option>
  345.  
  346. <option value="4">4</option>
  347. <option value="5">5</option>
  348. <option value="6">6</option>
  349. <option value="7">7</option>
  350. <option value="8">8</option>
  351. <option value="9">9</option>
  352.  
  353. <option value="10">10</option>
  354. </select>
  355. </span></td>
  356. <td><span class="style58">S$
  357. <input name="txtNRSham2" type="text" id="txtNRSham2" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  358. </span></td>
  359. </tr>
  360. <tr bgcolor="#BFE2FF">
  361. <td colspan="2"><span class="style58">No Rinse Shampoo 8oz </span></td>
  362.  
  363. <td><span class="style58">S$12.60</span></td>
  364. <td><span class="style48">
  365. <select name="listNRSham8" id="listNRSham8" onchange="num=12.60; form1.txtNRSham8.value=(parseFloat(num) * form1.listNRSham8.value).toFixed(2);MM_callJS('order(form1)')">
  366. <option>Select Quantity</option>
  367. <option value="1">1</option>
  368. <option value="2">2</option>
  369. <option value="3">3</option>
  370.  
  371. <option value="4">4</option>
  372. <option value="5">5</option>
  373. <option value="6">6</option>
  374. <option value="7">7</option>
  375. <option value="8">8</option>
  376. <option value="9">9</option>
  377.  
  378. <option value="10">10</option>
  379. </select>
  380. </span></td>
  381. <td><span class="style58">S$
  382. <input name="txtNRSham8" type="text" id="txtNRSham8" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  383. </span></td>
  384. </tr>
  385. <tr bgcolor="#BFE2FF">
  386. <td colspan="2"><span class="style58">No Rinse Body Wash 2oz </span></td>
  387.  
  388. <td><span class="style58">S$5.05</span></td>
  389. <td><span class="style48">
  390. <select name="listNRWash2" id="listNRWash2" onchange="num=5.05; form1.txtNRWash2.value=(parseFloat(num) * form1.listNRWash2.value).toFixed(2);MM_callJS('order(form1)')">
  391. <option>Select Quantity</option>
  392. <option value="1">1</option>
  393. <option value="2">2</option>
  394. <option value="3">3</option>
  395.  
  396. <option value="4">4</option>
  397. <option value="5">5</option>
  398. <option value="6">6</option>
  399. <option value="7">7</option>
  400. <option value="8">8</option>
  401. <option value="9">9</option>
  402.  
  403. <option value="10">10</option>
  404. </select>
  405. </span></td>
  406. <td><span class="style58">S$
  407. <input name="txtNRWash2" type="text" id="txtNRWash2" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  408. </span></td>
  409. </tr>
  410. <tr bgcolor="#BFE2FF">
  411. <td colspan="2"><span class="style58">No Rinse Body Wash 8oz </span></td>
  412.  
  413. <td><span class="style58">S$12.60</span></td>
  414. <td><span class="style48">
  415. <select name="listNRWash8" id="listNRWash8" onchange="num=12.60; form1.txtNRWash8.value=(parseFloat(num) * form1.listNRWash8.value).toFixed(2);MM_callJS('order(form1)')">
  416. <option>Select Quantity</option>
  417. <option value="1">1</option>
  418. <option value="2">2</option>
  419. <option value="3">3</option>
  420.  
  421. <option value="4">4</option>
  422. <option value="5">5</option>
  423. <option value="6">6</option>
  424. <option value="7">7</option>
  425. <option value="8">8</option>
  426. <option value="9">9</option>
  427.  
  428. <option value="10">10</option>
  429. </select>
  430. </span></td>
  431. <td><span class="style58">S$
  432. <input name="txtNRWash8" type="text" id="txtNRWash8" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  433. </span></td>
  434. </tr>
  435. <tr bgcolor="#BFE2FF">
  436. <td colspan="2"><span class="style58">No Rinse Body Bath 2oz </span></td>
  437.  
  438. <td><span class="style58">S$5.05</span></td>
  439. <td><span class="style48">
  440. <select name="listNRBath2" id="listNRBath2" onchange="num=5.05; form1.txtNRBath2.value=(parseFloat(num) * form1.listNRBath2.value).toFixed(2);MM_callJS('order(form1)')">
  441. <option>Select Quantity</option>
  442. <option value="1">1</option>
  443. <option value="2">2</option>
  444. <option value="3">3</option>
  445.  
  446. <option value="4">4</option>
  447. <option value="5">5</option>
  448. <option value="6">6</option>
  449. <option value="7">7</option>
  450. <option value="8">8</option>
  451. <option value="9">9</option>
  452.  
  453. <option value="10">10</option>
  454. </select>
  455. </span></td>
  456. <td><span class="style58">S$
  457. <input name="txtNRBath2" type="text" id="txtNRBath2" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  458. </span></td>
  459. </tr>
  460. <tr bgcolor="#BFE2FF">
  461. <td colspan="2"><span class="style58">No Rinse Body Bath 8oz </span></td>
  462.  
  463. <td><span class="style58">S$12.60</span></td>
  464. <td><span class="style48">
  465. <select name="listNRBath8" id="listNRBath8" onchange="num=12.60; form1.txtNRBath8.value=(parseFloat(num) * form1.listNRBath8.value).toFixed(2);MM_callJS('order(form1)')">
  466. <option>Select Quantity</option>
  467. <option value="1">1</option>
  468. <option value="2">2</option>
  469. <option value="3">3</option>
  470.  
  471. <option value="4">4</option>
  472. <option value="5">5</option>
  473. <option value="6">6</option>
  474. <option value="7">7</option>
  475. <option value="8">8</option>
  476. <option value="9">9</option>
  477.  
  478. <option value="10">10</option>
  479. </select>
  480. </span></td>
  481. <td><span class="style58">S$
  482. <input name="txtNRBath8" type="text" id="txtNRBath8" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  483. </span></td>
  484. </tr>
  485. <tr bgcolor="#BFE2FF">
  486. <td colspan="2"><span class="style58">Mosquitoe Outdoor Hand Band </span></td>
  487.  
  488. <td><span class="style58">S$4.70</span></td>
  489. <td><span class="style48">
  490. <select name="listOutdoor" id="listOutdoor" onchange="num=4.70; form1.txtOutdoor.value=(parseFloat(num) * form1.listOutdoor.value).toFixed(2);MM_callJS('order(form1)')">
  491. <option>Select Quantity</option>
  492. <option value="1">1</option>
  493. <option value="2">2</option>
  494. <option value="3">3</option>
  495.  
  496. <option value="4">4</option>
  497. <option value="5">5</option>
  498. <option value="6">6</option>
  499. <option value="7">7</option>
  500. <option value="8">8</option>
  501. <option value="9">9</option>
  502.  
  503. <option value="10">10</option>
  504. </select>
  505. </span></td>
  506. <td><span class="style58">S$
  507. <input name="txtOutdoor" type="text" id="txtOutdoor" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  508. </span></td>
  509. </tr>
  510. <tr bgcolor="#BFE2FF">
  511. <td colspan="2"><span class="style58">Mosquitoe Indoor Hand Band </span></td>
  512.  
  513. <td><span class="style58">S$3.70</span></td>
  514. <td><span class="style48">
  515. <select name="listIndoor" id="listIndoor" onchange="num=3.70; form1.txtIndoor.value=(parseFloat(num) * form1.listIndoor.value).toFixed(2);MM_callJS('order(form1)')">
  516. <option>Select Quantity</option>
  517. <option value="1">1</option>
  518. <option value="2">2</option>
  519. <option value="3">3</option>
  520.  
  521. <option value="4">4</option>
  522. <option value="5">5</option>
  523. <option value="6">6</option>
  524. <option value="7">7</option>
  525. <option value="8">8</option>
  526. <option value="9">9</option>
  527.  
  528. <option value="10">10</option>
  529. </select>
  530. </span></td>
  531. <td><span class="style58">S$
  532. <input name="txtIndoor" type="text" id="txtIndoor" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  533. </span></td>
  534. </tr>
  535. <tr bgcolor="#BFE2FF">
  536. <td colspan="2"><span class="style58">Mosquitoe Patch </span></td>
  537.  
  538. <td><span class="style58">S$5.35</span></td>
  539. <td><span class="style48">
  540. <select name="listPatch" id="listPatch" onchange="num=5.35; form1.txtPatch.value=(parseFloat(num) * form1.listPatch.value).toFixed(2);MM_callJS('order(form1)')">
  541. <option>Select Quantity</option>
  542. <option value="1">1</option>
  543. <option value="2">2</option>
  544. <option value="3">3</option>
  545.  
  546. <option value="4">4</option>
  547. <option value="5">5</option>
  548. <option value="6">6</option>
  549. <option value="7">7</option>
  550. <option value="8">8</option>
  551. <option value="9">9</option>
  552.  
  553. <option value="10">10</option>
  554. </select>
  555. </span></td>
  556. <td><span class="style58">S$
  557. <input name="txtPatch" type="text" id="txtPatch" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  558. </span></td>
  559. </tr>
  560. <tr bgcolor="#BFE2FF">
  561. <td colspan="2" rowspan="3" align="left" valign="top" bgcolor="#FFFFFF"><p class="style48"><br />
  562.  
  563. <strong>For other quantities, please contact us at:</strong><br />
  564. <strong>Tel: (65)6256 8187 <br />
  565. <span class="style48">Email: <a href="mailto:sales@kanpei.com.sg" class="style71">sales@kanpei.com.sg</a></span></strong></p> </td>
  566. <td bgcolor="#FFFFFF">&nbsp;</td>
  567. <td valign="top" bgcolor="#BFE2FF"><div align="right"><span class="style63">Sub-Total:</span></div></td>
  568. <td valign="top" bgcolor="#BFE2FF"><span class="style58">S$
  569. <input name="txtSub" type="text" id="txtSub" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  570.  
  571. </span></td>
  572. </tr>
  573. <tr bgcolor="#BFE2FF">
  574. <td bgcolor="#FFFFFF">&nbsp;</td>
  575. <td valign="top" bgcolor="#BFE2FF"><div align="right"><span class="style63">GST:</span></div></td>
  576. <td valign="top" bgcolor="#BFE2FF"><span class="style58">S$
  577. <input name="txtGST" type="text" id="txtGST" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  578. </span></td>
  579. </tr>
  580.  
  581. <tr bgcolor="#BFE2FF">
  582. <td bgcolor="#FFFFFF">&nbsp;</td>
  583. <td valign="top" bgcolor="#BFE2FF"><div align="right"><span class="style4"><span class="style62">Total Amount: </span><br />
  584. For order below S$50 (excluding GST), S$8 delivery charge applies.</span></div></td>
  585. <td valign="top" bgcolor="#BFE2FF"><span class="style58">S$
  586. <input name="txtTotal" type="text" id="txtTotal" value="0.00" size="7" maxlength="10" ReadOnly="True" style="text-align:right"/>
  587. </span></td>
  588. </tr>
  589.  
  590. <tr bgcolor="#BFE2FF">
  591. <td height="45" colspan="2" bgcolor="#FFFFFF">&nbsp;</td>
  592. <td bgcolor="#FFFFFF">&nbsp;</td>
  593. <td align="right" valign="top" bgcolor="#FFFFFF"><label>
  594. <input type="submit" name="Submit" value="Send Order" onClick ="return validate(form1)"/>
  595. </label></td>
  596. <td align="left" valign="top" bgcolor="#FFFFFF"><label>
  597. <input type="reset" name="Submit2" value="Clear Form" />
  598. </label></td>
  599.  
  600. </tr>
  601. </table>
  602. </form> </td>
  603. </tr>
  604. </table></td>
  605. </tr>
  606. </table>
  607. </td>
  608.  
  609. </tr>
  610.  
  611. <tr>
  612. <td valign="top" bgcolor="#0373B6"><div align="center"><span class="style4"><a href="index.htm">Home</a> | <a href="AboutUs.htm">About Us</a> | <a href="Products.html">Products</a> | <a href="outlets.htm">Outlets </a>| <a href="ContactUs.html">Contact Us</a> | <a href="OrderNow.htm">Order Now</a> </span>| <span class="style4"><a href="Warrantyform.htm">Warranty </a></span></div></td>
  613.  
  614. </tr>
  615. <tr>
  616. <td valign="top"><div align="center" class="style3">Copyright &copy; 2006 Kanpei Pte Ltd. All Rights Reserved. </div></td>
  617. </tr>
  618. </table>
Last edited by peter_budo; Feb 10th, 2009 at 8:25 am. Reason: Keep It Organized - For easy readability, always wrap programming code within posts in [code] (code blocks) and [icode] (inline code) tags.
Reply With Quote Quick reply to this message  
Join Date: Jun 2006
Posts: 7,609
Reputation: ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of 
Solved Threads: 464
Super Moderator
Featured Poster
~s.o.s~'s Avatar
~s.o.s~ ~s.o.s~ is offline Offline
Failure as a human

Re: Javascript not working right on FIREFOX!

 
0
  #4
Feb 5th, 2009
Sifting through that massive piece of code would be time consuming. If developing on Firefox, look into the Firebug addon which adds capabilities like Javascript debugging, error detection etc. Look at the errors which pop up in the Error Console; it will point you to the exact source of the problem.

Also, use code tags when posting code so that its easier to read; refer the forum announcements for more details.
I don't accept change; I don't deserve to live.
Reply With Quote Quick reply to this message  
Join Date: Dec 2008
Posts: 24
Reputation: jeffreyjs is an unknown quantity at this point 
Solved Threads: 0
jeffreyjs jeffreyjs is offline Offline
Newbie Poster

Re: Javascript not working right on FIREFOX!

 
0
  #5
Feb 6th, 2009
Sorry for the flooding of codes up there... i have try using the error console to find out the problem location... the problem lies here.. and it says form 1 is not defined... Any clue? Thanks

  1. <script type="text/JavaScript">
  2. <!--
  3. function MM_callJS(jsStr) { //v2.0
  4.   return eval(jsStr)
  5. }
  6. //-->
  7. </script>
Last edited by peter_budo; Feb 10th, 2009 at 8:25 am. Reason: Keep It Organized - For easy readability, always wrap programming code within posts in [code] (code blocks) and [icode] (inline code) tags.
Reply With Quote Quick reply to this message  
Join Date: Jun 2006
Posts: 7,609
Reputation: ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of 
Solved Threads: 464
Super Moderator
Featured Poster
~s.o.s~'s Avatar
~s.o.s~ ~s.o.s~ is offline Offline
Failure as a human

Re: Javascript not working right on FIREFOX!

 
0
  #6
Feb 6th, 2009
It is only in IE[and some other buggy browsers] that the NAME or ID attribute of an element represents the element in consideration; which actually isn't correct. You actually need to grab the element in consideration by either traversing the DOM [getElementById] or using the form reference each form element holds.
- Replace the `form1' with `this.form'
- Move the entire code snippet in the onchange handler and then invoke that function with `this.form' passed in to that function

Also, you shouldn't use eval; there is always a better way of doing things. Read:
http://www.jibbering.com/faq/#eval
http://www.jibbering.com/faq/faq_notes/form_access.html

As mentioned earlier, read the forum for the use of code tags as many people might ignore posts with code without code tags.
Last edited by ~s.o.s~; Feb 6th, 2009 at 1:36 pm.
I don't accept change; I don't deserve to live.
Reply With Quote Quick reply to this message  
Join Date: Dec 2008
Posts: 24
Reputation: jeffreyjs is an unknown quantity at this point 
Solved Threads: 0
jeffreyjs jeffreyjs is offline Offline
Newbie Poster

Re: Javascript not working right on FIREFOX!

 
0
  #7
Feb 7th, 2009
Hi, thanks for all those resources!!! I am really cause i am really poor in javascript which is why my way of doing things isn't the best way... Which is why i hope i could get some clue from you guys... Would u kindly provide me a code snippet as to how it should be done, i am really lost... Thanks
Reply With Quote Quick reply to this message  
Join Date: Jun 2006
Posts: 7,609
Reputation: ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of 
Solved Threads: 464
Super Moderator
Featured Poster
~s.o.s~'s Avatar
~s.o.s~ ~s.o.s~ is offline Offline
Failure as a human

Re: Javascript not working right on FIREFOX!

 
0
  #8
Feb 7th, 2009
I already provided the fix in my previous post. If what you posted really is your code then you shouldn't have problem understanding the fix I suggested. Anyways like I mentioned, you need to replace `form1' with `this.form' in your event handlers: onclick & onchange.

> Would u kindly provide me a code snippet as to how it should be
> done, i am really lost

Sifting through the entire code to fix the issue would be way too time consuming; you need to start learning Javascript using the links I provided.
I don't accept change; I don't deserve to live.
Reply With Quote Quick reply to this message  
Join Date: Dec 2008
Posts: 24
Reputation: jeffreyjs is an unknown quantity at this point 
Solved Threads: 0
jeffreyjs jeffreyjs is offline Offline
Newbie Poster

Re: Javascript not working right on FIREFOX!

 
0
  #9
Feb 8th, 2009
Hi, i have replace those form1 with this.form, please have a look thanks... but the problem still say form1 is undefined. any idea?

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
  1. <script type="text/JavaScript">
  2. <!--
  3. function MM_callJS(jsStr) { //v2.0
  4. return eval(jsStr)
  5. }
  6. //-->
  7. </script>

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
  1. <select name="listEPM430" id="listEPM430" onchange="num=176.40; this.form.txtEPM430.value=(parseFloat(num) * this.form.listEPM430.value).toFixed(2); MM_callJS('order(form1)')">
  2. <option>Select Quantity</option>
  3. <option value="1">1</option>
  4. <option value="2">2</option>
  5. <option value="3">3</option>
  6. <option value="4">4</option>
  7. <option value="5">5</option>
  8. <option value="6">6</option>
  9. <option value="7">7</option>
  10. <option value="8">8</option>
  11. <option value="9">9</option>
  12. <option value="10">10</option>
  13. </select>

and i also change the form1 in my function to this.form, but it doesn't work.. Sorry about that...

JavaScript / DHTML / AJAX Syntax (Toggle Plain Text)
  1. <script language="javascript">
  2. function order(form1) {
  3.  
  4. var Sub;
  5. var GST;
  6. var Total;
  7.  
  8. Sub = parseFloat(this.form.txtEPM430.value) + parseFloat(this.form.txtEPM400.value) + parseFloat(this.form.txtBPM100.value) + parseFloat(this.form. txtBPM400.value) + parseFloat(this.form.txtIRBody.value) + parseFloat(this.form.txtIRFore.value) + parseFloat(this.form.txtIREar.value) + parseFloat(this.form.txtNRSham2.value) + parseFloat(this.form.txtNRSham8.value) + parseFloat(this.form.txtNRWash2.value) + parseFloat( this.form.txtNRWash8.value) + parseFloat(this.form.txtNRBath2.value) + parseFloat(this.form.txtNRBath8.value) + parseFloat(this.form. txtOutdoor.value) + parseFloat(this.form.txtIndoor.value) + parseFloat(this.form.txtPatch.value);
  9.  
  10. this.form.txtSub.value = Sub.toFixed(2);
  11.  
  12. GST = Sub * 0.07;
  13. this.form.txtGST.value = GST.toFixed(2);
  14.  
  15. Total = Sub + GST;
  16. this.form.txtTotal.value = Total.toFixed(2);
  17.  
  18. }
  19.  
  20. </script>
Reply With Quote Quick reply to this message  
Join Date: Jun 2006
Posts: 7,609
Reputation: ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of ~s.o.s~ has much to be proud of 
Solved Threads: 464
Super Moderator
Featured Poster
~s.o.s~'s Avatar
~s.o.s~ ~s.o.s~ is offline Offline
Failure as a human

Re: Javascript not working right on FIREFOX!

 
0
  #10
Feb 8th, 2009
> MM_callJS('order(form1)')

Replace the above with order(this.form); .

> and i also change the form1 in my function to this.form

Like I mentioned, change form1 to this.form only in onchange and onclick handlers and not anywhere else. The form1 in your function is the form reference which is passed as an argument to the order() function.
I don't accept change; I don't deserve to live.
Reply With Quote Quick reply to this message  
Reply

This thread has been marked solved.
Perhaps start a new thread instead?
Message:



Similar Threads
Other Threads in the JavaScript / DHTML / AJAX Forum
Thread Tools Search this Thread



About Us | Contact Us | Advertise | DaniWeb | Acceptable Use Policy | RSS Feed

©2003 - 2009 DaniWeb® LLC