I'm having a problem doing something very basic in jQuery. Can someone tell me what I'm doing wrong exactly?
If I run the code below, the function $.get seems to be missing (getJSON and others missing too). But $ itself and other functions do exist, so I know JQuery is loading.
google.load("jquery", "1.3.2");  function _validate(form, rules_file) {    $.get('/validation_rules.json',function(data) {      alert("hello")    }) }    Any ideas would be much appreciated.
Thanks, Rob
Edit: here is some additional info:
  <script src="http://www.google.com/jsapi"></script>   <script>     google.load("prototype", "1.6");     google.load("scriptaculous", "1.8");     google.load("jquery", "1.3.2");   </script>   <script>     jQuery.noConflict(); // prevent conflicts with prototype   </script>   <script src="/livepipe/src/livepipe.js"           type="text/javascript"></script>   <script src="/livepipe/src/window.js"           type="text/javascript"></script>   <script src="/livepipe/src/tabs.js"           type="text/javascript"></script>   <script src="/jquery.maskedinput-1.2.2.js"          type="text/javascript"></script> 
                on if not a function" jQuery error occurs for 2 main reasons: Loading an old version of the jQuery library that doesn't support the on function. Loading a library that overrides the value of the dollar sign $ variable.
Description. The jQuery. get( url, [data], [callback], [type] ) method loads data from the server using a GET HTTP request. The method returns XMLHttpRequest object.
A function is a relation in which each input has only one output. In the relation , y is a function of x, because for each input x (1, 2, 3, or 0), there is only one output y. x is not a function of y, because the input y = 3 has multiple outputs: x = 1 and x = 2.
This will happen, too, if you use the SLIM version of jQuery.
<script src="https://code.jquery.com/jquery-3.1.1.slim.min.js"></script>   gave me
>jQuery.get :undefined >jQuery.get() :VM7130:1 Uncaught TypeError: jQuery.get is not a function     at <anonymous>:1:8   while loading the same library without the slim option
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>   works well
jQuery.get() :Object {readyState: 1}
The $ variable you have is from Prototype-js, because you are using the jQuery.noConflict method.
That method will restore the $ variable back to whichever library first implemented it.
You should use the jQuery methods on the jQuery global object directly, eg.:
jQuery.get(/* .. */); jQuery.getJSON(/* .. */); // etc...   Or you can define another shorter variable as alias if you want:
var $j = jQuery.noConflict(); 
                        If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With