$.getJSON sans réponse

$.getJSON sans réponse

Bonjour,
J'ai adapté cet exemple sur internet :

Code HTML :

<!DOCTYPE html>
<html xmlns=" http://www.w3.org/1999/xhtml ">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Request json test</title>
<script src="jquery-2.1.4.min.js"></script>
</head>
<body>
<a href="#" id="getdata-button">Get JSON Data</a>
<div id="showdata"></div>
<script>
$(document).ready(function(){
    //attach a jQuery live event to the button
    $('#getdata-button').live('click', function(){
        $.getJSON('localhost/xampp/$json.php?callback=?', function(data) {
            alert("Function called");
            //alert (data.item1+" "+data.item2+" "+data.item3); //further debug
            $('#showdata').html("<p>item1="+data.item1+" item2="+data.item2+" item3="+data.item3+"</p>");
        });
    });
});
</script>
</body>
</html>


Code $json.php :
<?php
$arr = array ('item1'=>"I love jquery4u",'item2'=>"You love jQuery4u",'item3'=>"We love jQuery4u");
echo $_GET['callback'] . '(' . json_encode($arr) . ');';
?>

alert("Function called");  n'apparait jamais et cette erreur apparait sur la console :
:  jquery-2.1.4.min.js:23:0

La même chose se produit aver une version antérieure de Jquery.

Merci de m'aider à résoudre ce problème.