Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Change text color using javascript

Explorer ,
Aug 15, 2020 Aug 15, 2020

I tried everything I can think of and just can't get this to work.In my "field1" validate tab I use this custom code

if(event.value > 0){event.target.textColor = color.blue;
}else if(event.value < 0){event.target.textColor = color.red;
}else if(event.value == 0){event.target.textColor = color.white;
}

field1 get it's value from another field. I want it to show if 0= white, if bigger then 0=blue, if lower then 0=red but the colors are mixed up,for example if number is 5 it should be blue but is white, 0 is red and -2 is blue but in field properties it shows correct color ( example in the field1 value is 5 it show white color but in properties it's blue) .If I enter value manually it doesn't change colors at all.

TOPICS
Acrobat SDK and JavaScript
3.3K
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Community Expert , Aug 15, 2020 Aug 15, 2020

Try this code:

 

var v = Number(this.getField("fieldname").valueAsString);
if (v > 0){
	event.target.textColor = color.blue;
} else if (v < 0){
	event.target.textColor = color.red;
} else if (v == 0){
	event.target.textColor = color.white;
}
event.value = v;

 

If it doesn't work check the JS Console for error messages.

Translate
Community Expert ,
Aug 15, 2020 Aug 15, 2020

How does get field1 the value from the other field?

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Aug 15, 2020 Aug 15, 2020

With custom calculation script 

event.value = this.getField("fieldname").value;

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 15, 2020 Aug 15, 2020

Use your other script also there.

 

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Aug 15, 2020 Aug 15, 2020

I try and it didn't change anything.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Aug 15, 2020 Aug 15, 2020

Try this code:

 

var v = Number(this.getField("fieldname").valueAsString);
if (v > 0){
	event.target.textColor = color.blue;
} else if (v < 0){
	event.target.textColor = color.red;
} else if (v == 0){
	event.target.textColor = color.white;
}
event.value = v;

 

If it doesn't work check the JS Console for error messages.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Aug 15, 2020 Aug 15, 2020
LATEST

Thank you that worked.

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines