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

Get the value from dropdown list (selectedIndex) and text field -- not working

Guest
Apr 12, 2013 Apr 12, 2013

Copy link to clipboard

Copied

Hi All,

I am trying to find and change by the values selected by user using dropdown and text field. Here is the code.

ChangeRevDetails();

function ChangeRevDetails(){

          var myDialog = app.dialogs.add({name:"Enter copyright information"});

//    var monthlist = col1.dropdowns.add('myList', undefined, myList);

          var col1 = myDialog.dialogColumns.add();

          var col2 = myDialog.dialogColumns.add();

 

    col1.staticTexts.add({staticLabel:"Month:"});

          col1.staticTexts.add({staticLabel:"Year:"});

    col1.staticTexts.add({staticLabel:"Rev. no.:"});

   

    var myList = [ "January", "February",  "March", "April", "March", "April", "May", "June", "July", "August", "Sepetember", "October", "November", "December" ];

     var myMonth = col2.dropdowns.add({stringList:myList, selectedIndex:0, minWidth:100});//{minWidth:100});

     var myYear = col2.textEditboxes.add({editContents:"2013", minWidth:100});  

     var MyRev = col2.textEditboxes.add({minWidth:100});

    var RevMonth = (myList [myMonth.selectedIndex]);

    var RevYear = myYear.editContents;

    var RevNumber = MyRev.editContents;

    var RevToReplace1 = RevMonth +", "+ RevYear;

    var RevToReplace2 = RevMonth +", "+ RevYear + " Rev. " + RevNumber;

    var myResult = myDialog.show();

        if(myYear.editContents == "") //entry is ""

        {

        alert("Please enter some text into the contents field.");

        ChangeRevDetails();

        }

        else if(myResult == true) //user entered datas

        {

            alert (RevMonth);

            alert (RevYear);

            alert (RevNumber);

            alert (RevToReplace1);

            alert (RevToReplace2);

            app.findGrepPreferences = NothingEnum.nothing;

            app.changeGrepPreferences = NothingEnum.nothing;

            // grep find/change

            app.findGrepPreferences = app.changeGrepPreferences = null;      

            app.findGrepPreferences.findWhat = "[\\l\\u]+?\\s?\\d{4},?\\s+[\\l\\u]+\\.*\\s+\\d+";

            app.findGrepPreferences.appliedParagraphStyle = app.activeDocument.paragraphStyleGroups.item("Back page"). paragraphStyles.item("Legal_7/9");

            app.changeGrepPreferences.changeTo = RevToReplace1;

            app.changeGrepPreferences.appliedParagraphStyle = app.activeDocument.paragraphStyleGroups.item("Back page"). paragraphStyles.item("Legal_7/9");

            app.activeDocument.changeGrep();

            app.findGrepPreferences = NothingEnum.nothing;

            app.changeGrepPreferences = NothingEnum.nothing;

 

    }

    else //implies user clicked cancel

    {

    myDialog.destroy();

    }

}

The problem is, it is not taking the value which the user selects from the dropdown and the text field. It takes the default value as "January" and the year is "2013" as both of these values are given as selectedIndex:0 and editContents:"2013". I have compared the coding with some other working scripts as well, but it is not working. I have added several alert boxes to check the value we get.

Also, the find and change is also not working. Please help me on this. Thanks.

Regards,

Muthuraj. D

TOPICS
Scripting

Views

1.4K

Translate

Translate

Report

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

Enthusiast , Apr 12, 2013 Apr 12, 2013

Change the order for dialogresults:

...

var myYear = col2.textEditboxes.add({editContents:"2013", minWidth:100});  
var MyRev = col2.textEditboxes.add({minWidth:100});

var myResult = myDialog.show();

    if(myYear.editContents == "") //entry is ""
    {
    alert("Please enter some text into the contents field.");
    ChangeRevDetails();
    }
    else if(myResult == true) //user entered datas
    {

var RevMonth = (myList [myMonth.selectedIndex]);
var RevYear = myYear.editContents;
var RevNumber = M
...

Votes

Translate

Translate
Enthusiast ,
Apr 12, 2013 Apr 12, 2013

Copy link to clipboard

Copied

Change the order for dialogresults:

...

var myYear = col2.textEditboxes.add({editContents:"2013", minWidth:100});  
var MyRev = col2.textEditboxes.add({minWidth:100});

var myResult = myDialog.show();

    if(myYear.editContents == "") //entry is ""
    {
    alert("Please enter some text into the contents field.");
    ChangeRevDetails();
    }
    else if(myResult == true) //user entered datas
    {

var RevMonth = (myList [myMonth.selectedIndex]);
var RevYear = myYear.editContents;
var RevNumber = MyRev.editContents;
var RevToReplace1 = RevMonth +", "+ RevYear;

var RevToReplace2 = RevMonth +", "+ RevYear + " Rev. " + RevNumber;

...

didn't have a look for the find change problem

Votes

Translate

Translate

Report

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
Guest
Apr 15, 2013 Apr 15, 2013

Copy link to clipboard

Copied

LATEST

Hi Hans,

Thanks for your help. It is working fine now until retriving data from the dialog box, however the find and change is not happening. I am trying to find out and will get back to you soon. Again, thanks for your great help. Have a good day.

Regards,

Muthuraj. D

Votes

Translate

Translate

Report

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