gpt4 book ai didi

asp.net - Jquery用户控件

转载 作者:行者123 更新时间:2023-12-01 00:09:24 24 4
gpt4 key购买 nike

我遇到 jquery 未加载到 asp 用户控件中的问题。

我只想在单击复选框时添加单击事件。

这是我的 JavaScript 文件

$(document).ready(function() {
var arr = jQuery(":checkbox[id*='drpAccountType']");
for (i = 0; i < arr.length; i += 1) {
$("#" + arr[i].id).click(function() { alert(this.id) });
}
});
if (typeof (Sys) !== 'undefined') Sys.Application.notifyScriptLoaded();

用户控件预渲染事件:

Protected Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
ScriptManager.RegisterClientScriptInclude(Me, Me.GetType, "CheckboxdropdownScript", ResolveUrl("~/Scripts/CheckBoxDropDown.js"))
End Sub

脚本加载正常,但任何 jQuery 的使用都返回未定义。然后,只有当页面加载时,我才能在 firebug 中为命令行执行相同的代码。 jquery 库已加载到母版页中。

每当我在 asp 用户控件中使用 jquery 时,我总是会发现问题,并且我总是必须设法让它工作。我尝试了 stackoverflow 中的所有条目,但从未找到通用解决方案。

有没有人找到一种简单的解决方案来使用 jquery 与母版页、asp.net 中的用户控件如果有人可以分享如此有值(value)的信息,我将不胜感激。

我的经理即将从应用程序中删除 jquery,因为我们总是花费大量时间来找到一种解决方法,使其能够与用户控件一起使用。

请帮忙,我喜欢 jquery,我真的很想将它用于客户端脚本。

最诚挚的问候

最佳答案

您的脚本可能会在 jquery 库之前插入到页面中。 (您可以通过检查页面的 HTML 输出来验证这一点。)

当脚本文件内联执行 JS 时,尤其是当该 JS 依赖于其他库时,使用 RegisterStartupScript 是最安全的。而不是RegisterClientScriptInclude 。如果您使用this overload of RegisterStartupScript ,您可以构造对同一外部 JS 文件的引用,它将在正确的位置运行。

作为替代方案,您可以使用 <asp:ScriptReference/> ScriptManagerProxy 中的标签在您的用户控件中,而不是在 Page_Load 或 Page_Init 中注册脚本;根据我的经验,这些脚本是在母版页中的脚本之后添加的。

关于asp.net - Jquery用户控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/967400/

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