当前位置:  开发笔记 > 编程语言 > 正文

Jquery用户控件

如何解决《Jquery用户控件》经验,为你挑选了1个好方法。

我有一个问题,没有在asp用户控件中加载jquery.

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

这是我的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的任何使用都返回undefined.然后只有在加载页面时,我才能在firebug中为commande行执行相同的代码.jquery库加载在母版页中.

每当我在asp用户控件中使用jquery时,我总会发现问题,而且我总是不得不乱用它来使用它.我尝试了stackoverflow中的所有条目,但我从来没有找到一个作为一般解决方案.

任何人发现一个简单的解决方案,使用jquery与母版页,用户控制在asp.net我会很感激,如果有人可以分享这些有价值的信息.

我的经理即将从应用程序中删除jquery,因为我们总是花费大量时间来找到一个解决方法,让它与用户控件一起工作.

请帮助,我喜欢jquery,我真的想将它用于客户端脚本.

最好的祝福



1> Dan Davies B..:

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

当脚本文件执行JS内联时,特别是当JS依赖于其他库时,最安全的是使用RegisterStartupScript而不是RegisterClientScriptInclude.如果使用RegisterStartupScript的这个重载,您可以构造对同一外部JS文件的引用,它将在正确的位置运行.

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

推荐阅读
我我檬檬我我186
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有