Expand my Community achievements bar.

Don’t miss the AEM Skill Exchange in SF on Nov 14—hear from industry leaders, learn best practices, and enhance your AEM strategy with practical tips.
SOLVED

Search only partial textField rawValue

Avatar

Level 9

My form has a textField that users enter part numbers separated by commas. I want to write an if statement that looks to see if one of the part numbers is included in the list. Is there a way to script to search for only part of a textField's rawValue or formattedValue?

So if the rawValue of textField1 is 1234, 4569, 3582

I want to be able to enter 4569 in textField2 (a different textField)  and click a button that runs a script to see if 4569 is included in the list of part numbers.

Is this possible?

Also: is it possible to send the comma separated part numbers to a list box?

I appreciate any help provided.

1 Accepted Solution

Avatar

Correct answer by
Level 10

Here you go:

var aWords = TextField1.rawValue.split(","),

  cTest = this.rawValue,

  isIncluded = function (value) {

    return value.replace(/\s/g, "") == this.testValue.replace(/\s/g, "");

  },

  toTest = {

    testValue : cTest

  },

  iCount = 0;

// Check all words against the entered value

if (aWords.some(isIncluded, toTest) === true) {

  iCount += 1;

}

// Show a message, if the word was found

if (iCount > 0) {

  xfa.host.messageBox("The word '" + cTest + "' is already included in the list.", "Match found.", 0, 0)

}

View solution in original post

6 Replies

Avatar

Correct answer by
Level 10

Here you go:

var aWords = TextField1.rawValue.split(","),

  cTest = this.rawValue,

  isIncluded = function (value) {

    return value.replace(/\s/g, "") == this.testValue.replace(/\s/g, "");

  },

  toTest = {

    testValue : cTest

  },

  iCount = 0;

// Check all words against the entered value

if (aWords.some(isIncluded, toTest) === true) {

  iCount += 1;

}

// Show a message, if the word was found

if (iCount > 0) {

  xfa.host.messageBox("The word '" + cTest + "' is already included in the list.", "Match found.", 0, 0)

}

Avatar

Level 9

This script works great! Thank you

Is there a way to highlight the part number in the list that was found?

Avatar

Level 7

I think highlighting the field would be really difficult to do. First the field would have to be set as rich text then you would need a method to change the fields color and background within that field. I guess you could grab the field data, and write it back out highlighting the string in question.

Avatar

Level 10

There is a nice sample from Bruce which shows how to update the contents of RichText fields.

Adobe LiveCycle Designer Cookbooks by BR001: Programmatically updating Rich Text (or xHTML)

Avatar

Level 9

The examples look very interesting. It will take some looking thru. Thank you for sending this information.

-Don