2016-12-30 3 views
0

Ich benutze die um einen Spinner während eines Ajax Anrufs zu zeigen. Ich habe alles wie im Beispiel eingerichtet, aber nichts passiert, wenn ich versuche, den Spinner zu initialisieren.jQuery Spin-Plugin tut nichts

<head> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js" type="text/javascript"></script> 
<script src="javascripts/jquery.spin.js" type="text/javascript"></script> 
<link href="stylesheets/jquery.spin.css" rel="stylesheet" type="text/css" /> 
</head> 
<body> 
    <div id="spinner" data-spin></div> 
    <select id="mySelect">...</select> 
    <select id="code">...</select> 
    <div id="person"></div> 
</body> 

$(function() { 
$(document) 
    .ajaxStart(function() { 
     $("#spinner").spin("show"); 

    }) 
    .ajaxStop(function() { 
     $("#spinner").spin("hide"); 
    }); 

$("#mySelect").change(function() { 
    $.ajax({ 
     url: "ajax-refresh", 
     data: { 
      code: $("#code option:selected").val(), 
     }, 
     success: function(resp) { 
      $("#person").html(resp); 
     } 
    }); 
}); 
}); 
+0

Warum ist Ihr Skript-Tag in Ihrer Kopfzeile? Versuchen Sie es nach "Körper" zu bewegen. Außerdem sieht es so aus, als müssten Sie '.spin()' aufrufen, um das Plugin zu initialisieren. Es ist nicht explizit auf ihren Dokumenten, aber es kann die Ursache sein, Plugins haben in der Regel eine Art von Init-Methode, die benötigt wird. – jdmdevdotnet

Antwort

0

Die Anweisungen in dem Verweis, auf den verwiesen wird, enthalten diese Befehle.

Es scheint, dass die .spin-Funktion zuerst ohne Argumente aufgerufen werden muss, bevor nachfolgende Aufrufe mit "show" und "hide" ausgeführt werden.

+0

Nichts in ihrer Dokumentation sagt ausdrücklich, dass Sie zuerst anrufen müssen, aber ich stimme zu, dass das OP es versuchen sollte. – jdmdevdotnet

+0

Ich habe das versucht. Ich hätte das in meiner Frage erwähnen sollen. – zero01alpha

+0

Ich schlage vor, nach jedem .spin-Funktionsaufruf einen JavaScript- "alert" -Aufruf hinzuzufügen, um sicherzustellen, dass dieser Code ausgeführt wird. – JohnH