gpt4 book ai didi

javascript - 如何解决 SignalR 的类型错误

转载 作者:行者123 更新时间:2023-12-03 11:42:55 25 4
gpt4 key购买 nike

我目前在使用网络浏览器调试客户端代码时遇到以下错误:

  TypeError: $ is undefined 
ReferenceError: $ is not defined

在调试器的“网络”选项卡中,它将 JQueries 脚本显示为“404”。这是否表明我的 Jqueries 没有被渲染/初始化

这是我的客户端代码:

     <script src="Scripts/jquery-1.10.2.min.js"></script>
<script src="Scripts/jquery.signalR-2.1.0.min.js"></script>
<script src='<%: ResolveClientUrl("~/signalr/hubs") %>'></script>
<script type="text/javascript">
$(function () {
// Declare a proxy to reference the hub.
var notifications = $.connection.NotificationHub;
// Create a function that the hub can call to broadcast messages.
notifications.client.recieveNotification = function (role, descrip) {
// Add the message to the page.
$('#spanNewMessages').text(role);
$('#spanNewCircles').text(descrip);

};
// Start the connection.
$.connection.hub.start().done(function () {
alert("Preparing to send notifications...");
notifications.server.sendNotifications();
alert("Notifications have been sent.");

}).fail(function (e) {
alert(e);
});
//$.connection.hub.start();
});
</script>
<h1>New Notifications</h1>
<div>
New <span id="spanNewMessages"></span> role.<br />
New<span id="spanNewCircles"></span> descrip.<br />
</div>

更新的 Jquery 脚本:

 <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
<script src="~/Scripts/jquery.signalR-2.1.0.min.js"></script>
<script src='<%: ResolveClientUrl("~/signalr/hubs") %>'></script>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>
<script type="text/javascript">

任何帮助都会非常有帮助。谢谢

最佳答案

$ 是 jQuery 的别名。如果您想使用 jquery 脚本,则必须将其包含在您的页面中。

只要你的 jQuery 脚本返回 404,你就无法使用它。为了帮助您,您可以从 jQuery 网站加载脚本。

替换这一行:

<script src="Scripts/jquery-1.10.2.min.js"></script>

用这个:

<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script>

网站上的一个好习惯是从 Google cdn 加载 jQuery,因为它很可能会被缓存,因为许多网站都使用它:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>

为确保脚本正常运行,您可以做的另一件事是确保与其他脚本不发生冲突。将其添加到代码的开头:

jQuery.noConflict();

确保将每个 $ 替换为 jQuery。

示例:

$('#spanNewMessages').text(role);

将变成:

jQuery('#spanNewMessages').text(role);

如果它不起作用,请删除所有代码并尝试显示alert(jQuery("h1").text());像这样:

jQuery(function () { alert(jQuery("h1").text()); });

关于javascript - 如何解决 SignalR 的类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26181779/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com