【问题标题】:Embedding Scripts Loading in Order嵌入脚本按顺序加载
【发布时间】:2012-03-29 02:38:16
【问题描述】:

我之前曾要求就此提供最佳实践, 但这是策略之一 这是我们将要进行的情况:

  1. 我们想首先将 JQuery 添加到页面(例如通过 网络资源 )

  2. 然后加载一个

  3. 图书馆正在使用一个名为:

    的模板
    "Hello sticky hide"
    
  4. 添加库用户代码Ready Blah blah blah

我想至少为自己完成这个练习。 也许只需添加行,删除字符或更改位置即可修复它

但任何想法,希望修复得到赞赏

它没有显示任何错误但没有结果。

[assembly: WebResource("Quad.WebControls.JQuery.js", "application/x-javascript")]
[assembly: WebResource("Quad.WebControls.ProHello.js", "application/x-javascript")]
namespace Quad.WebControls
{
    [ToolboxData("<{0}:QuadBar runat=server></{0}:QuadBar>")]
    public class QuadBar : WebControl
    {
        protected override void OnPreRender(EventArgs e)
        {
            base.OnPreRender(e);

            if (!DesignMode)
            {
                //ClientScriptManager cs ;
                ScriptManager sm= ScriptManager.GetCurrent(Page);

                if (sm == null)
                    throw new HttpException("Error");

                string scriptJQuery = Page.ClientScript.GetWebResourceUrl(this.GetType(), "Quad.WebControls.JQuery.js");
                string scriptjqHello = Page.ClientScript.GetWebResourceUrl(this.GetType(), "Quad.WebControls.ProHello.js");


                HtmlGenericControl jq = new HtmlGenericControl("script");
                 ...

                HtmlGenericControl jqHello = new HtmlGenericControl("script");
                 ...      

                Page.Header.Controls.Add(jq);
                Page.Header.Controls.Add(jqHello);


        //-------           

**RenderControl**

public override void RenderControl(HtmlTextWriter writer) { base.RenderControl(writer);

    //StringBuilder sbInit = new StringBuilder();


    StringBuilder sb = new StringBuilder();

    sb.Append(" <script type=\"text/javascript\"> ")
        .Append("  Sys.WebForms.PageRequestManager.getInstance().add_endrequest(EndRequestHandler); ")
        .Append("$(document).ready(function () {")
          ...
        .Append("});")
        .Append("</script>");

    writer.Write(sb.ToString());
}   

Aspx 部分 -(控件已注册) 表单 - 放置在 Asp.Net 表单中

<asp:ScriptManager ID="sm" runat="server"></asp:ScriptManager>

  <div class="Hello sticky hide">
        <p>
            MHM Message</p>
        <a class="close" href="javascript:">
            <img src="images/icon-close.png" /></a>
    </div>

<Quad:QuadBar runat="server" ID="proHello" />



    <div class="wrapper">

        <ul>
            <li><a href="#" class="round green button" id="sticky"><span>Sticky bar</span></a> will
                remain visible even user scroll the page.</li>
        </ul>


    </div>  

【问题讨论】:

    标签: jquery asp.net embedded-resource


    【解决方案1】:

    答案可以在这里找到: Making a DLL of a User Control plus Jquery embeded in

    虽然它可以算作我的一个问题的重复

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多