2016-03-16 4 views
0

У меня есть надбавка, которую я хочу выполнить, исходя из поля промежуточного итога. Существует минимум 4,50, который рассчитывается, когда суммарный итог составляет < 112,5. Когда промежуточный итог = 112,5, расчет является промежуточным итогом * 0,04. Моя проблема в том, что я не знаю, как запрограммировать поле, чтобы оно отображалось как пустое, когда итоговый результат равен 0. Вот мой код.PDF Текстовое поле не отображается как пусто

{ 
    var nSubtotal = this.getField("Subtotal").value; 
    if(nSubtotal = "0")event.value = ""; 
    if(nSubtotal >= 112.5) event.value = nSubtotal * 0.04; 
    if(nSubtotal < 112.5) event.value = 4.50; 
} 

ответ

0

Это можно упростить (и заставить работать) с чем-то вроде этого:

if (this.getField("Subtotal").value > 0) { 
event.value = util.printf("%.2f", Math.min(560, Math.max(4.50, this.getField("Subtotal").value * 0.04))) ; 
} else { 
event.value = "" ; 
} 

Обратите внимание, что в этом случае форматирование поля результата делается в расчете, и, следовательно, , в поле результата НЕ нужен какой-либо формат; это также предотвращает отображение поля результата на основе неполных вычислений.

+0

Благодарим вас за ответ. Когда я пытаюсь использовать это, я получаю синтаксическую ошибку: отсутствует) после списка аргументов 2: в строке 3. Я забыл упомянуть, что максимальная надбавка составляет 560 долларов. –

+0

Спасибо за указатель; на второй строке нет закрывающего родителя; код теперь исправлен, а максимальная надбарочная логика встроена ... (хе-хе ... люди говорят, что я люблю однострочные ...) –

+0

@ MaxWyss. Спасибо. Вы были большой помощью. –

Смежные вопросы