基于ComboBox值修改TextField颜色:JavaScript RGB颜色替换需求
改用RGB设置TextField背景颜色的解决方案
没问题!要把原来用颜色名称设置背景的逻辑改成RGB值非常简单,咱们直接调整代码里的颜色赋值部分就行。
首先,先明确在Acrobat JavaScript中,设置字段填充色的RGB格式是一个数组:["RGB", 红, 绿, 蓝],这里的红、绿、蓝数值是0到1之间的小数(对应0-255的比例,比如255对应1,127对应约0.5)。
下面是修改后的完整代码,你只需要替换其中的你的TextField字段名为实际要改变颜色的TextField的字段ID即可:
function test() { var orderField = this.getField("Order01"); // 替换成你要修改颜色的TextField的字段名称 var targetField = this.getField("你的TextField字段名"); if (!event.willCommit) { if (event.change === "Sell") { // 红色RGB:这里用的是纯红(255,0,0),你可以根据需求调整数值 targetField.fillColor = ["RGB", 1, 0, 0]; } else if (event.change === "Buy") { // 绿色RGB:这里用的是纯绿(0,255,0) targetField.fillColor = ["RGB", 0, 1, 0]; } else { // 其他选项时恢复默认背景色(比如白色) targetField.fillColor = ["RGB", 1, 1, 1]; } } }
小提示
如果需要自定义深浅色,比如深绿色(0, 100, 0),可以把数值转换成0-1的小数:
// 深绿色:0/255=0,100/255≈0.392,0/255=0 targetField.fillColor = ["RGB", 0, 0.392, 0];
这样修改后,就能精准用RGB值控制TextField的背景颜色啦!
内容的提问来源于stack exchange,提问作者Raafat O. Wakid
相关产品推荐
相关产品推荐

