2017-03-17 33 views
-1

我正在用Adobe Acrobat Pro DC創建一個計算器。我有兩組單選按鈕,需要根據這兩個選項創建一個值。如何爲2個單選按鈕選擇編寫Java腳本計算?

您正在測試什麼類型的零件? (PartType) -Gear凸輪軸 - 軸承

您尋找什麼類型的缺陷? (DefectType) -Burn -Stress -depth

如果齒輪和燒傷被選擇時,值是10。 如果齒輪和應力被選擇時,值是70 如果軸承和選擇燃燒,值爲35

我無法爲每個選擇分配一個值,因爲這些組合是唯一的。我該如何在Java Script中編寫此代碼?

這裏是我到目前爲止(我知道是錯的)

如果(PartType ==齒輪& & DefectType ==刻錄)值== 10

請幫幫忙!謝謝!

+1

這是你的代碼嗎? – user7417866

+0

Refere this http://www.javascript-coder.com/javascript-form/javascript-calculator-script.phtml –

回答

0

我們可能有兩種可能的解決方法。

注意:在下文中,我們假設值將顯示在文本字段中。顯示的代碼片段是該特定字段的計算事件腳本的一部分。如果要在另一個計算中使用該值,請定義該變量,然後使用其名稱而不是「event.value」。 a)如果可以從選項(「部件類型加缺陷類型」)的意義上計算出該值,我們可以將這些部件設置爲單選按鈕選擇的返回值。在這種情況下,該值是快速計算的:

event.value = this.getField("PartType").value*1 + this.getField("DefectType").value*1) ; 

或者,如果存在更復雜的算法/公式,請改爲使用該值。 b)如果沒有公式/算法來計算這個值,我們需要一個查找表。在我們的例子中,我們將定義一個二維數組,其中元素表示PartType,並且是相應的DefectTypes的數組。

單選按鈕字段的返回值將對應於該查找表中的索引號。

我們將開始首次設置查詢表:

var myLUT = new Array() ; 
myLUT[0] = [10, 70, aa] ; // values for Gear and Burn, Stress, Depth 
myLUT[1] = [bb, cc, dd] ; // values for Camshaft and Burn, Stress, Depth 
myLUT[2] = [35, ee, ff] ; // values for Bearing and Burn, Stress, Depth 

其中AA,BB,等爲代表的accoriding組件的值。

我們可以在「計算」腳本中定義此查找表,但創建包含此定義的文檔級腳本會更有效。

的計算腳本應該是這樣的:

var pt = this.getField("PartType").value ; 
var dt = this.getField("DefectType").value ; 

event.value = myLUT[pt][dt] ; 

,並且將做到這一點。

處理單選按鈕字段還有一件事。即使必須選擇一個選項,也有可能(和合法)沒有選擇作爲默認選項。但是,兩種情況都會選擇選項。

if (this.getField("PartType").value != "Off" && this.getField("DefectType").value != "Off") { 
// now run our code 
} 

我們可能還需要指定該單選按鈕組中的一個或兩個都沒有(還)檢查發生了什麼:因此,我們必須要求這兩個羣體有一個檢查選項保護代碼。