![]() ![]() ![]() ![]() |
|||||
|
|||||
樓主 wowo ![]()
![]() |
因希望依填入的數值 自動計算後 比較大小 並填入比較後對應的文字 自動計算的部份,在線上請教各位大大後 以得到解決 但是計算後的比較 填入的數值確並非我想的那樣 正常來說應該是 0.5>0.01 但是程式判斷 0.5<0.01 我也檢查不出那裡有問題 煩請各位大大協助看看 之前 迷路 大大有教我要用 程式標籤 如果沒有正確使用 程式標籤 請能耐心幫我看看我的程式 謝謝 程式標籤: &<;<textarea name="code" class="c#"&>;> <html> <head> <meta http-equiv="Content-Language" content="zh-tw"> <meta http-equiv="Content-Type" content="text/html; charset=big5"> <meta name="GENERATOR" content="Microsoft FrontPage 5.0"> <meta name="ProgId" content="FrontPage.Editor.Document"> <title>三板引導塊強度計算</title> <base target="_self"> <META http-equiv=Content-Type content="text/html; charset=windows-1252"> <META content="Microsoft FrontPage 4.0" name=GENERATOR> <META http-equiv=Content-Type content="text/html; charset=windows-1252"> <META content="Microsoft FrontPage 4.0" name=GENERATOR> <META http-equiv=Content-Type content="text/html; charset=windows-1252"> <META content="Microsoft FrontPage 4.0" name=GENERATOR> <style type="text/css"> .90 { } </style> </head> <script language="JavaScript"> function calc1() //計算公式,當再表單中按下C欄位的時後,就會被執行 { var varL2=document.form1.varL2.value; var varL3=document.form1.varL3.value; var varL=document.form1.varL.value; var varb=document.form1.varb.value; var varh=document.form1.varh.value; var varP=document.form1.varP.value; var varI=document.form1.varI.value; // var varJ=document.form1.varJ.value; var varK=document.form1.varK.value; var varX=document.form1.varX.value; // var varY=document.form1.varY.value; var varZ=document.form1.varZ.value; var result; //宣告結果儲存的空間 result= (1*varL2)*2/3; document.form1.varI.value=FormatNumber(result,2); //開模後抱持長度 result= 10*((12*(1*varP)*0.5*(1*varL)*0.1*(1*varL)*0.1*(1*varL)*0.1)/(3*2100000*(1*varb)*0.1*(1*varh)*0.1*(1*varh)*0.1*(1*varh)*0.1)); document.form1.varX.value=FormatNumber(result,5); //導軌的撓曲度 if( varI = varL3 ) //-------2/3判斷 { document.form1.varJ.value = "="; document.form1.varK.value = "OK"; } else { if(varI < varL3) { document.form1.varJ.value = "<"; document.form1.varK.value = "OK"; } else { document.form1.varJ.value = ">"; document.form1.varK.value = "NG"; } } if( varX > 0.01 ) //-------判斷撓曲 { document.form1.varY.value = ">"; document.form1.varZ.value = "NG"; } else { if( varX < 0.01) { document.form1.varY.value = "<"; document.form1.varZ.value = "OK"; } else { document.form1.varY.value = "="; document.form1.varZ.value = "OK"; } } } </script> <BODY bgcolor="#FFFFFF" text="#000000" background="../其他照片/愛心2.gif"> <form name="form1" method="post" action=""> <table border="1" cellpadding="10" height="282" width="667"> <tr> <td height="258" width="639"><img src="圖檔/3plate.png" width="700" height="335" alt=""/> <p align="center"><span lang="EN-US" style="font-size:12.0pt;font-family: "Times New Roman";mso-fareast-font-family:新細明體;mso-font-kerning:1.0pt; mso-ansi-language:EN-US;mso-fareast-language:ZH-TW;mso-bidi-language:AR-SA"> <!--[if gte mso 9]><xml> <o:OLEObject Type="Embed" ProgID="AutoCAD.Drawing.14" ShapeID="_x0000_i1025" DrawAspect="Content" ObjectID="_1115892264"> </o:OLEObject> </xml><![endif]--> </span> </p> <p>L2:調整塊長(mm)</p> <p>L3:開模後,調整塊抱持的長度(mm)</p> <p>L:導軌凸出承板的長度(mm)</p> <p>b:導軌深度(mm)</p> <p>h:導軌寬度(mm)</p> <p>P:承板以上的動模重+頂出板重(kg)</p> <br> L2:<input name="varL2" type="text" size="7">mm L3:<input type="text" name="varL3" size="7">mm L:<input type="text" name="varL" size="7">mm b:<input type="text" name="varb" size="7">mm h:<input type="text" name="varh" size="7">mm P:<input type="text" name="varP" size="7">kg </p> <p style="line-height: 150%">調整塊(L2)的2/3長度 <input type="text" name="varI" onclick="calc1()" size="8"> <input type="text" name="varJ" onclick="calc1()" size="1"> L3;判斷是否大於2/3<input type="text" name="varK" onclick="calc1()" size="8"> </p> <p style="line-height: 150%">每塊導軌撓曲度(內定2塊導軌) <input type="text" name="varX" onclick="calc1()" size="8"> mm <input type="text" name="varY" onclick="calc1()" size="1"> 0.01mm;導軌撓曲量 <input type="text" name="varZ" onclick="calc1()" size="8"> </font> </p> </td> </table> </form> <SCRIPT LANGUAGE=javascript> function FormatNumber(srcStr,nAfterDot){ var srcStr,nAfterDot; var resultStr,nTen; srcStr = ""+srcStr+""; strLen = srcStr.length; dotPos = srcStr.indexOf(".",0); if (dotPos == -1){ resultStr = srcStr+"."; for (i=0;i<nAfterDot;i++){ resultStr = resultStr+"0"; } return resultStr; } else{ if ((strLen - dotPos - 1) >= nAfterDot){ nAfter = dotPos + nAfterDot + 1; nTen =1; for(j=0;j<nAfterDot;j++){ nTen = nTen*10; } resultStr = Math.round(parseFloat(srcStr)*nTen)/nTen; return resultStr; } else{ resultStr = srcStr; for (i=0;i<(nAfterDot - strLen + dotPos + 1);i++){ resultStr = resultStr+"0"; } return resultStr; } } } </script> <p><font size="4"> </font></p> </BODY></HTML> &<;</textarea&>;>
本篇文章發表於2015-06-12 20:49
|
1樓
作者回應
wowo ![]() |
程式標籤: 功能使用失敗
煩請各位大大 耐心幫忙
本篇文章回覆於2015-06-12 20:50
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
2樓
作者回應
wowo ![]() |
我是asp 但沒asp可以選
在試一次程式標籤 php
本篇文章回覆於2015-06-12 21:06
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
3樓 |
請先將45行
if( varI = varL3 ) 改為 if( varI == varL3 )
本篇文章回覆於2015-06-12 23:14
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
4樓 |
另外程式碼第43行加入
varX = document.form1.varX.value; 這樣就可以正確顯示了 測試網址在 http://ap.a168a.com/compare/a.htm
本篇文章回覆於2015-06-12 23:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
5樓 |
補充第44行也要加入
varI = document.form1.varI.value;
本篇文章回覆於2015-06-12 23:28
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
6樓
作者回應
wowo ![]() |
DEAR 香帥大大
謝謝你的幫忙 我已依據 香帥大大的指導修改了 程式有2個計算式 其中一個已OK 但是還有一個重新輸入不同的數值後 計算式會計算 但是判斷的部份無法動作 可以再麻煩你幫我看看嗎 在varL2 varL3..等等欄位重新輸入新的數值 欄位 varI 會自動計算 但是varJ varK 這二個欄位無更新 欄位varJ 一直顯示 > ,而欄位 varK 則一直顯示 NG --第2計算式----------- 欄位 varX 會自動計算 varY varZ 這二個欄位已經可以更新了 -------------------------- 以下是更新後的程式 再次麻煩了..謝謝
本篇文章回覆於2015-06-13 08:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
7樓 |
我有幫您更新程式測試(如我server測試網址)
http://ap.a168a.com/compare/a2.htm 測試結果如下 ![]() 上圖第一次輸入值 下圖第二次輸入值(變更L3由4改為2) varJ,varK都會變動,不會像您說的兩者都不變喔 請到我的server測試,然後將您得到的圖上傳,再解說清楚
本篇文章回覆於2015-06-13 13:55
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
8樓
作者回應
wowo ![]() |
dear 香帥大大
好奇怪,怎麼好了 會是我先開舊程式,數值還未清掉的關係嗎? 萬分感謝 可以再請教一個問題嗎 L2 輸入300 L3輸入200 得到的值是 200 = L3(正確判斷式應該是這樣) 但是判斷式 200 > 200 判斷 NG 這個有辦法修改嗎 再次麻煩了 謝謝
本篇文章回覆於2015-06-13 15:13
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
9樓
作者回應
wowo ![]() |
DEAR 香帥大大
程式還有有點怪怪 多測試幾次後 得到的數值就不對了
本篇文章回覆於2015-06-13 15:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
10樓
最有價值解答
香帥 ![]() |
因為變成文字比較,所以會有所不同,因此
程式碼47-57行請改為 測試網址在 http://ap.a168a.com/compare/a5.htm
本篇文章回覆於2015-06-13 17:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
11樓
作者回應
wowo ![]() |
dear 香帥大大
謝謝你不厭其煩幫我解決問題 現在程式已經能正常執行了 再次謝謝
本篇文章回覆於2015-06-13 22:12
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔-- |
回覆 |
如要回應,請先登入. |