我正在使用Adobe Acrobat 10为一家照片打印公司创建一个订购表。其概念是,用户将为每张照片单独输入数据-文件名、纸张大小和纸张类型到表格的单元格中,第四列将计算价格。
纸张大小和纸张类型是下拉菜单,纸张大小有4个选项,纸张类型有3个选项,因此有12种不同价格的组合。
我希望在每行的第四列中有一个单元格,根据用户选择的选项来计算价格,但无法使用加法/乘法等来计算价格。
我的想法是,我需要像在Excel中一样,编写一个带有多个条件的IF语句,但是我不熟悉JavaScript,因此需要一些帮助!
提前谢谢你!
发布于 2013-02-12 23:06:34
我自己并不熟悉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;
}
当然,有许多方法可以处理这个问题,从嵌套if语句到将所有内容存储在map/hash/object中,再到使用switch语句。比较自然不需要针对数字,你也可以使用字符串。
发布于 2013-02-12 23:15:13
使其成为对象,并将其用作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)
检查密钥是否存在,并在需要时输入错误消息。
https://stackoverflow.com/questions/14843064
复制相似问题