Review a Javascript code snippet to call a function which declared inside jQuery code :


<script>
   //javascript
  function submitSearchForm() {

	updateErrorMessage("Please enter a website url");
		
  }

  //jquery
  jQuery(document).ready(function($) {

	function updateErrorMessage(msg) {
		$('#error').html(msg).hide().fadeIn(500);
	}

     }
  );
</script>

But, browser console shows the updateErrorMessage function is not defined.


   Uncaught ReferenceError: updateErrorMessage is not defined

Solution

To call the function which is declared inside jQuery code, make it global access by adding the function to window object :


<script>
  function submitSearchForm() {

	updateErrorMessage("Please enter a website url");
		
  }

  jQuery(document).ready(function($) {

	//make it global access
	window.updateErrorMessage = function(msg) {
		$('#error').html(msg).hide().fadeIn(500);
	}

     }
  );
</script>