Dependent dropdown not working in IE

I searched and found some javascript / jquery that does what I need but it doesn't work in IE 10 or 11. Have not tried other ie versions. Code works in both Firefox and Chrome. Problem with IE is when: Is this a printing issue is changed to Yes, (line 130) all that happens is the Loader.gif spins perpetually, I never get the expected drop down list. File extension is .cfm (coldfusion) I've changed to .html to upload.

I don't know javascript other than to search for, find and edit to fit my needs. Yes, I plan on learning but right now, it is what it is.
Any help in solving this for IE is appreciated.
java-problem.html
fmhelpDirector Medical InformaticsAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

hieloCommented:
Do you have a link to the rendered CF page?  If not, can you open the page in IE, then retrieve the source code and post the source code (but replace sensitive info with *** first)?

In the mean time, the things that stand out are:
a. In the "inline" javascript, I see:
...
            }M <==
            function selectText(textField)
...

Get rid of that "M".

b. in drop_down.js, these are better off done after the page has finish loading:
var select   = document.getElementsByName('sPrinting_issue')[0],
    textarea = document.getElementById('txtarea');

if (select.addEventListener) {
     select.addEventListener('change', handler, false);
} else if (select.attachEvent) {
     select.attachEvent('onchange', handler);
}

Open in new window


I suggest you change the lines above to:
$(document).ready(function(){
	var select   = document.getElementsByName('sPrinting_issue')[0],
	    textarea = document.getElementById('txtarea');

	if (select.addEventListener) {
	     select.addEventListener('change', handler, false);
	} else if (select.attachEvent) {
	     select.attachEvent('onchange', handler);
	}
});

Open in new window

0
fmhelpDirector Medical InformaticsAuthor Commented:
hielo,
IE Source code (is this what you're looking for?)
I'll try to implement your suggestions.
Thanks for your response.
 File attached: iesourcecode.html
0
fmhelpDirector Medical InformaticsAuthor Commented:
hielo,
Implemented your suggestions and still having the same issue. IE doesn't load the printing type drop down list. Works in other browsers.
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

hieloCommented:
There's no file attached.
0
fmhelpDirector Medical InformaticsAuthor Commented:
Interesting. I'll try again.
iesourcecode.html
0
hieloCommented:
populate() doesn't "see" the value of sPrinting_issue.  Try passing it from function drop_down_list():
            $.getScript("js/printing_types/"+ sPrinting_issue.toLowerCase() +".js", function(){

                  populate(document.form.sPrinting_type, sPrinting_issue);

                    $('#loading_sPrinting_type_drop_down').hide(); // Hide the Loading...
                   $('#sPrinting_type_drop_down').show(); // Show the drop down
            });

Then in yes.js:
function populate(form, sPrinting_issue )
{
      $('#loading_sPrinting_type_drop_down').hide();

      if(sPrinting_issue == 'No') // No selection doesn't provide a list
      {
            $('#sPrinting_type_drop_down').hide();
            $('#no_sPrinting_type_drop_down').show();
      }
      else
      {
            form.options.length = 0;
            form.options[0] = new Option("Select the type of printing problem","Select the type of printing problem");
            form.options[1] = new Option("Rx","Rx");
            form.options[2] = new Option("AVS","AVS");
            form.options[3] = new Option("Receipts","Receipts");
            form.options[4] = new Option("Orders","Orders");
            form.options[5] = new Option("Other","Other");
      }
}
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
fmhelpDirector Medical InformaticsAuthor Commented:
Hielo,
AWESOME! Those changes worked great. Thank you so very much.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
JavaScript

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.