Javascript terminates after trying to select data from an object passed to a function

Posted by Silmaril89 on Stack Overflow See other posts from Stack Overflow or by Silmaril89
Published on 2010-04-09T17:04:03Z Indexed on 2010/04/09 17:23 UTC
Read the original article Hit count: 238

Filed under:

Here is my javascript:

    $(document).ready(function(){
        var queries = getUrlVars();
        $.get("mail3.php", { listid: queries["listid"], mindex: queries["mindex"] }, showData, 'html');
    });

    function showData(data)
    {
        var response = $(data).find("#mailing").html();

        if (response == null)
        {
            $("#results").html("<h3>Server didn't respond, try again.</h3>");
        }
        else if (response.length)
        {
            var old = $("#results").html();
            old = old + "<br /><h3>" + response + "</h3>";
            $("#results").html(old);

            var words = response.split(' ');
            words[2] = words[2] * 1;
            words[4] = words[4] * 1;
            if (words[2] < words[4])
            {
                var queries = getUrlVars();
                $.get("mail3.php", { listid: queries["listid"], mindex: words[2] }, function(data){showData(data);}, 'html');
            }
            else
            {
                var done = $(data).find("#done").html();
                old = old + "<br />" + done;
                $("#results").html(old);
            }
        }
        else
        {
            $("#results").html("<h3>Server responded with an empty reply, try again.</h3>");
        }
    }

    function getUrlVars()
    {
      var vars = [], hash;
      var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
      for (var i = 0; i < hashes.length; i++)
      {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
      }
      return vars;
    }

After the first line in showData: var response = $(data).find("#mailing").html();

the javascript stops. If I put an alert before it, the alert pops up, after it, it doesn't pop up. There must be something wrong with using $(data), but why? Any ideas would be appreciated.

© Stack Overflow or respective owner

Related posts about JavaScript