2013-02-12 59 views
0

我使用Adobe Acrobat 10爲照片打印業務創建訂購表單。概念是,用戶將分別爲每張照片輸入數據 - 文件名,紙張大小和紙張類型進入表格和第四列中的單元格將計算價格。JavaScript Acrobat 10 IF Statement with 2 conditions

紙張尺寸和紙張類型是下拉菜單,紙張尺寸有4個選項和紙張類型有3個選項,因此12種組合都有不同的價格。

我想在每一行來計算基於用戶選擇的選項的價格的第四列的單元格,但不能達到這個使用加法/乘法等

我有我需要的概念用Excel中的多條件編寫IF語句,但不熟悉JavaScript,因此需要一些幫助!

預先感謝您!

+1

'&&'表示「和」,「||」表示「或」 – Pointy 2013-02-12 22:33:31

回答

0

我不熟悉的EXCEL格式自己,但在JavaScript中,你可能有這樣的事情:

if(paperType==1 && paperSize==1) { 
    price = 13; 
} else if(paperType==1 && paperSize==2) { 
    price = 16; 
} else if(paperType==2 && paperSize==1){ 
    price = 12; 
} else { 
    price = 27; 
} 

當然也有處理這個問題,如果從嵌套的許多方式語句將所有內容存儲在map/hash/object中以使用switch語句。比較自然不需要反對數字,你也可以使用字符串。

+0

用這個解決了它,效果很好。非常感謝David McMullin! – 2013-02-13 14:30:13

0

使它成爲一個對象,並把它作爲一個查找表來prevent too many if-else-statements

var priceByPapersizeAndPapertype = { 
    "A4": { 
     "thick": 8.00, 
     "medium": 13.50, 
     "thin": … 
    }, 
    "A5": { 
     … 
    }, 
    … 
}; 

var size, type = …; // from form input 
var price = priceByPapersizeAndPapertype[size][type]; 

如果用戶可以輸入無效的輸入,可以檢查與if (size in priceByPapersizeAndPapertype)關鍵的存及其提出如果出現錯誤信息需要。