LefterisL
LefterisL

Reputation: 1153

ReferenceError js Function not defined

I'm getting "Uncaught ReferenceError: refreshAgonas is not defined "

The players div is filled correctly. Do I need some kind of special define with the JS functions in the JS file?

<html>    
  <head>
    <meta content="text/html;charset=utf-8" http-equiv="Content-Type">
    <meta content="utf-8" http-equiv="encoding">
  </head>
  <script type="text/javascript" src="jquery.js"></script>
  <script type="text/javascript" src="jquery-draw.js"></script>
  <h2>Game</h2> 
  <div class="agonas">
    <script>
        setInterval(refreshAgonas, 5000);
        var inRequesG = false;
    </script>
  </div>
  <h2>Players</h2>
  <div class="players">
    <script>
      setInterval(refreshPlayers, 5000);
      var inRequest = false;
    </script>
  </div>

</html>

jquery-draw.js

   function refreshPlayers() {
    if (inRequest) {
        return false;
    }
    inRequest = true;
    var load = $.get('playersdata.php');
    $(".players").html('Refreshing');
    load.error(function () {
        console.log("Mlkia kaneis");
        $(".players").html('failed to load');
        // do something here if request failed
    });
    load.success(function (res) {
        console.log("Success");
        $(".players").html('<table border="1"><tr><th>ID</th><th>Name</th><th>Email</th><th>League</th><th>Sex</th><th>Birthday</th></tr>' + res + '</table>');
    });
    load.done(function () {
        console.log("Completed");
        inRequest = false;
    });
}

function refreshAgonas() {
    if (inRequestG) {
        return false;
    }
    inRequestG = true;
    var load = $.get('playersdata.php');
    $(".agonas").html('Refreshing');
    load.error(function () {
        console.log("Mlkia kaneis");
        $(".agonas").html('failed to load');
        // do something here if request failed
    });
    load.success(function (res) {
        console.log("Success");
        $(".agonas").html('<table border="1"><tr><th>ID</th><th>Name</th><th>Email</th><th>League</th><th>Sex</th><th>Birthday</th></tr>' + res + '</table>');
    });
    load.done(function () {
        console.log("Completed");
        inRequestG = false;
    });
}

Upvotes: 0

Views: 711

Answers (3)

cretzzzu3000
cretzzzu3000

Reputation: 221

Now I saw the problem:

Replace

var inRequesG = false;

With

var inRequestG = false;

You forgot the "t"

Upvotes: 1

aaron-bond
aaron-bond

Reputation: 3349

Try defining the functions like this:

var refreshPlayers = function () {};
var refreshAgonas = function () {};

Try this and respond with the results.

EDIT: didn't mean to include the parenthesis.

Upvotes: 1

cretzzzu3000
cretzzzu3000

Reputation: 221

Try replacing:

setInterval( refreshAgonas, 5000);

With this:

setInterval(function(){ refreshAgonas()}, 5000);

Upvotes: 0

Related Questions