Nicht "Eigentum " signalR' von undefined oder null-Verweis
Ich versuche die SignalR-intro-Beispiel von hier: http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/tutorial-getting-started-with-signalr-20
Folgenden die Probe, bekam ich den folgenden Fehler nach dem drücken von F5:
Unbehandelte Ausnahme in Zeile 17, Spalte 5
http://myServer.com:12269/signalr/hubs0x800a138f - JavaScript runtime
error: Unable to get property 'signalR' von undefined oder null-Verweis
Ich bin neu in SignalR, nicht ganz sicher, wo zu beginnen. Jeder Einblick?
Einen screenshot von der Fehlermeldung. Es ist Teil der erzeugten hubs Skript.
Den Quellcode auf der index.html:
<!DOCTYPE html>
<html>
<head>
<title>SignalR Simple Chat</title>
<style type="text/css">
.container {
background-color: #99CCFF;
border: thick solid #808080;
padding: 20px;
margin: 20px;
}
</style>
</head>
<body>
<div class="container">
<input type="text" id="message" />
<input type="button" id="sendmessage" value="Send" />
<input type="hidden" id="displayname" />
<ul id="discussion"></ul>
</div>
<!--Script references. -->
<!--Reference the jQuery library. -->
<script src="Scripts/jquery-1.6.4.min.js"></script>
<!--Reference the SignalR library. -->
<script src="Scripts/jquery.signalR-2.1.0.min.js"></script>
<!--Reference the autogenerated SignalR hub script. -->
<script src="signalr/hubs"></script>
<!--Add script to update the page and send messages.-->
<script type="text/javascript">
$(function () {
//Declare a proxy to reference the hub.
var chat = $.connection.chatHub;
//Create a function that the hub can call to broadcast messages.
chat.client.broadcastMessage = function (name, message) {
//Html encode display name and message.
var encodedName = $('<div />').text(name).html();
var encodedMsg = $('<div />').text(message).html();
//Add the message to the page.
$('#discussion').append('<li><strong>' + encodedName
+ '</strong>: ' + encodedMsg + '</li>');
};
//Get the user name and store it to prepend to messages.
$('#displayname').val(prompt('Enter your name:', ''));
//Set initial focus to message input box.
$('#message').focus();
//Start the connection.
$.connection.hub.start().done(function () {
$('#sendmessage').click(function () {
//Call the Send method on the hub.
chat.server.send($('#displayname').val(), $('#message').val());
//Clear text box and reset focus for next comment.
$('#message').val('').focus();
});
});
});
</script>
</body>
</html>
- Sie erhalten diese Fehlermeldung in Ihrem browser?
- Ja, ich bin mit IE 10.
- Können Sie uns einige code?
- Ich habe ein screenshot hochgeladen der Fehler. Die Codes werden einfach kopiert aus dem Beispiel-link.
- Sie laden die gute version von JQuery vor dem laden der hub?
- Ich denke, ich sollte haben. Weil es ist alles über die NuGet. Ich nicht tun, nichts besonderes.
- Kannst du den code, wo Sie laden JQuery und denen Sie festlegen können, schließen Sie den client an den hub?
- Ich habe gerade gemeinsam den Quellcode der Seite.
- Nur um sicher zu sein. Haben Sie die JQuery-Skript-Datei "jquery-1.6.4.min.js" in den script-Ordner?
- Bingo! Es stellt sich heraus, ich bin mit Total verschiedenen Versionen von jQuery 1.10.2 und singalR 2.0.0. Nachdem ich die Versionsnummer ändern, alles funktioniert jetzt! Wenn Sie post für Ihre Antwort, ich werde es markieren. Danke!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie zum verweisen auf die entsprechende version von JQuery, dass Sie in Ihren Skripts Ordner.
Ich vor der gleichen Frage während der Arbeit an
http://www.asp.net/signalr/overview/getting-started/tutorial-getting-started-with-signalr
wirklich das Problem ist der kopierte HTML-code aus einer Anleitung. die HTML-bezieht sich auf eine ältere version von Jquery und jquery-singnal R
update diese Werte nach den aktuellen automatisch geladen Skript-Versionen wie unten gezeigt
jQuery (
$
) ist nicht definiert, also :Dem Fehler zu tun hat mit jQuery, nicht SignalR.
Beachten Sie die Fehlermeldung sagt
Unable to get property 'signalR' of undefined or null reference
. Wie können wirsignalR
von einem unbestimmten oder null-Objekt.Zu beheben, stellen Sie sicher, dass Sie befestigen, jQuery, um die Seite korrekt.
Wieder: Das hat nichts zu tun mit SignalR ungezogen ist, sondern nur ein Fall der fehlenden jQuery-Bibliothek.
Um zu testen, ob jQuery tatsächlich geladen, führen Sie diese in der Konsole:
Sollten Sie die standard-jQuery-Ausgabe. Wenn das nicht funktioniert, versuchen Sie dies. Wenn das funktioniert, bedeutet es, Sie haben ein Problem mit in Konflikt stehenden Variablen.