我已经看到了与此类似的问题和答案,但似乎没有一个可以解决问题。
我在更新面板中有一个用户控件。在我的用户控件中,我输出 javascript。
触发时javascript不会触发。如果我将 javascript 移动到 usercontrol/updatepanels 之外的父页面,那么它会触发。这样做是没有意义的,因为我不能在另一个页面上使用这个用户控件而不复制代码......通过复制整个 javascript(不同的站点)或在每个页面中添加对 .js 文件的引用它使用在(同一站点)上。它只是不太便携
我只想输出带有控件的javascript(在更新面板内)。
提到更新面板是为了确保我正在做的事情的准确性。即使我将用户控件放在更新面板之外,它也不起作用。
保持简单(这对我不起作用):
用户控制:
<%@ 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>
家长:
<uc1:_location runat="server" ID="_location" />
chrome 中的调试告诉我“未捕获的 ReferenceError:未定义测试”
如果我将javascript直接添加到onclick,如下所示:
onclick="alert('Hello World!');"
如上所述,将功能移动到父页面也可以。
就好像浏览器忽略了用户控件的脚本输出。
有任何想法吗?