我在这里面临一个小问题:
我有一个 aspx 页面,其中包含一个更新面板,该面板有一个占位符(在其内容模板中),其中包含根据特定条件显示/隐藏的不同用户控件。
其中一个内部有一个很长的脚本,其中有一个初始化函数,该函数具有使用服务器标签(<% #myCtrl.ClientID%>)检索的控件以获取值等。问题是,当我在更新面板完成更新后调用此函数时,它只是说它是未定义的..
好像我的 userControl 脚本根本没有被看到,
这是我的 aspx 页面,更新完成时调用“initializeFees”函数:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnablePartialRendering="true"
EnablePageMethods="true">
<asp:UpdatePanel runat="server">
<ContentTemplate>
<script type="text/javascript">
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(initializeFees);
</script>
<div class="Registration_ProgressContent">
<uc3:Ctrl_RegistrationProgress ID="Ctrl_RegistrationProgress1" runat="server" OnSelectedIndexChanged="changeStep" />
</div>
</div>
<div class="Registration_StepContent">
<asp:PlaceHolder runat="server">
<uc1:Ctrl_RegistrationGeneral ID="Ctrl_RegistrationGeneral1" runat="server" Visible="False" />
<uc4:Ctrl_RegistrationFee ID="Ctrl_RegistrationFee1" runat="server" Visible="False" />
这是我的“uc4:Ctrl_RegistrationFee”html 代码:
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="Ctrl_RegistrationFee.ascx.vb"
Inherits="MDSInscription.Ctrl_RegistrationFee" %>
<script type="text/javascript">
//Validateurs
var valTeam;
var valEmail;
var imgName;
function initializeFees() {
valTeam = $('#valCreateTeamName');
valEmail = $('#valCreateEmail');
$("#accordion").accordion({
//activate: function (event, ui) {
// // validateSelection();
//}
});
后面的代码(VB.NET .....#joy..):
Private Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
ScriptManager.RegisterClientScriptBlock(Me, Page.GetType(), "Init", "initializeFees();", True)
End Sub
这是我搜索一个多小时后得到的代码,我收到以下错误:
Uncaught ReferenceError: initializeFees is not defined
如果您觉得可以提供帮助,谢谢!