2012-11-01 61 views
1

我試圖讓單選按鈕的「值」改變,這取決於其他單選按鈕的選擇。 (這是在Adobe Pro的PDF表單(不是設計師)基於單選按鈕選擇的計算PDF FORM JS

,我已經試過代碼(插在SingleTotal場)如下: 但並不計算:

// Custom Calculate script 
(function(){ 


//declare vars 


var oFldSec1 = this.getField("A"); 
var oFldSec2 = this.getField("B"); 
var oFldSec3 = this.getField("C"); 
var oFldSel = this.getField("Options Single"); 
var oFldSub = this.getField("SingleTotal"); 

if(oFldSec1.checked) { 

    switch(oFldSel.value) 
    { 
     case "boy": 
     event.value = 30; 
     break; 
     case "girl": 
     event.value = 35; 
     break; 
     default: 
     event.value = 0; 
     break; 
    } 
} 
else if(oFldSec2.checked) { 

switch(oFldSel.value) 
    { 
     case "boy": 
     event.value = 40; 
     break; 
     case "girl": 
     event.value = 45; 
     break; 
     default: 
     event.value = 0; 
     break; 
    } 
} 

}) 

任何謝謝:)

+0

難道不應該是'如果(oFldSec1。勾選)'和'if(oFldSec2.checked)' –

+0

@Asad - 感謝您的幫助。我已經改變了它,因爲你已經說過,不幸的是它仍然沒有計算? :-) – user1426583

+0

你在哪裏定義事件?爲什麼你的函數沒有命名? –

回答

1

從文檔,radiogroups and checkgroups do not use the value property to store their current state,所以你在那裏運氣不好。

嘗試:

(function() { 

    //declare vars 
    var oFldSub = getField("SingleTotal"); 
    var total = 0; 

    var selectedPlan = getField("PlanOptions").valueAsString; 
    var selectedSingle = getField("OptionsSingle").valueAsString; 

    if (selectedPlan == "A") { 

     switch (selectedSingle) { 
     case "boy": 
      total = 30; 
      break; 
     case "girl": 
      total = 35; 
      break; 
     default: 
      total = 0; 
      break; 
     } 
    } 
    else if (selectedPlan == "B") { 

     switch (selectedSingle) { 
     case "boy": 
      total = 40; 
      break; 
     case "girl": 
      total = 45; 
      break; 
     default: 
      total = 0; 
      break; 
     } 
    } 
    event.value = total; 
})() 
0

如果您只是相加或相乘,我會一步從VBA回來,並嘗試「價值是_ _以下字段的」。

例如給現場平面A 0和B計劃的值爲10,男孩的30值和女孩的出口總值的35

價值又在哪裏以往總被假設去,告訴該字段來計算其價值爲扁平疣,PlanB,男孩,女孩

的總和

如果扁平疣被選擇,被選中的女孩,則該值將是35