我已经看到类似的问题和答案,但似乎没有解决问题.
我在更新面板中有一个用户控件.在我的用户控件里面我输出了javascript.
触发时javascript不会触发.如果我将javascript移动到usercontrol/updatepanels之外的父页面,则会触发它.这样做是没有意义的,因为我不能在没有重复代码的情况下在另一个页面上使用此usercontrol ...通过复制整个javascript(不同的站点)或在每个页面中添加对.js文件的引用在(同一地点).它的便携性更低
我只想用控件输出javascript(在更新面板内).
我提到了updatepanel的准确性.即使我将usercontrol放在updatepanels之外,它也不起作用.
保持简单(这对我不起作用):
用户控件:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="_location.ascx.cs" Inherits="_location" %>
<script type="text/javascript">
function test() {
alert('Hello World!');
}
</script>
<a href="javascript:void(0);" onclick="javascript:test();">
Find For Me
</a>
Run Code Online (Sandbox Code Playgroud)
家长:
<uc1:_location runat="server" ID="_location" />
Run Code Online (Sandbox Code Playgroud)
在chrome中调试告诉我"Uncaught ReferenceError:test not defined"
如果我将javascript直接添加到onclick,如下所示,它可以工作:
onclick="alert('Hello World!');"
Run Code Online (Sandbox Code Playgroud)
如上所述,将函数移动到父页面也可以.
就像浏览器忽略用户控件的脚本输出一样.
有任何想法吗?
使用:Visual Studio Express 2013 for Web编写.NET 4.5.1站点.
项目最初建立在默认的"创建新网站"模板上,因此有问题的部分由IDE添加到我的项目中,尚未编辑.
这是一个长达数周的项目,今天我开始收到与创建时添加的"罐装"项目有关的错误.到目前为止,它一直没有错误地工作.
错误消息是:
Server Error in '/' Application.
'respond' is not a valid script name. The name must end in '.js'.
Run Code Online (Sandbox Code Playgroud)
我调试了这个与我的site.master文件中的这一行直接相关:
<asp:ScriptReference Name="respond" />
Run Code Online (Sandbox Code Playgroud)
在此处查看评论此参考文献包含在我的主文件部分中:
这是IDE在创建时添加的更大的脚本引用组的一部分.
在故障排除中,我尝试添加.js; 将路径属性添加到实际文件中; 并完全评论了这条线.
添加扩展名和/或路径会导致不同的错误:
Server Error in '/' Application.
The assembly 'System.Web.Extensions, Version=4.0.0.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35' does not contain a Web resource that
has the name 'respond.js'. Make sure that the resource name is spelled correctly.
Run Code Online (Sandbox Code Playgroud)
唯一成功的故障排除是评论它但这打破了另一个关键功能:访问我的链接现在需要.ASPX扩展现在我以前可以访问我的链接而不指定我的文件上的扩展名...这是项目的默认方式是通过ide创建的,所以有了这个修复,我的链接都没有编辑,没有编辑每个链接和扩展. 不理想.
我已经尝试使用程序包管理器进行更新,但没有任何成功.我还验证了我的脚本文件夹中存在的respond.js文件,以及bootstrap等其他文件.
我在这里搜索并搜索了相当长的一段时间,但有很多不相关的结果,包含脚本管理员的摘录,结果是无穷无尽的.
我不确定需要进行更正,或者是否需要其他文件.重建我的网站没有任何效果,我已经删除了每个帖子中的"临时"文件我说它可能适用于不同但相似的问题.
对此错误的纠正措施是什么?