I usually code all my Javascript in a single external file that accepts the data from a form in the main page's HTML textarea box.

Now I would like to break up this single Javascript file into separate files.
For example, I'd like to have main.js as the main controlling program which calls, say, input.js, do-computations.js, and output-results.js.

I would simply like to have main.js feed the textarea contents into input.js to parse the contents and assign all the data properly, to be passed back out to main.js.

Can this be done (is it simply a matter of feeding this.form from sub-routine, to sub-routine, to sub-routine, etc.)? Is there a limit to how deep into sub-routines a form element can be passed?

Member Avatar

I don't know what limit might be placed on such a thing ... but I built (can't find my example at the moment) a little function that creates a new javascript include element in the page header, effectively loading javascript on the fly (I used it for proof of concept loading php values as javascript without ajax)...

Try using the javascript DOM to write and append a <script> tag to the page header, and you should get the new javascript loaded dynamically in the page.

parent script

function load_script ( path ) {
  var head = document.getElementsByTagName('head').item(0);
  var script = document.createElement('script');
    script.setAttribute( 'type', 'text/javascript' );
    script.setAttribute( 'src', path );
  head.appendChild( script );

load_script( 'test.js' );

child script (test.js)

alert( 'I am loaded' );

Didn't test this, but something like this is how I made it work before.



Be a part of the DaniWeb community

We're a friendly, industry-focused community of developers, IT pros, digital marketers, and technology enthusiasts learning and sharing knowledge.