将 javascript 代码段附加到 body 标记的末尾
Posted
技术标签:
【中文标题】将 javascript 代码段附加到 body 标记的末尾【英文标题】:Appending javascript code piece to the end of the body tag 【发布时间】:2011-02-04 04:07:56 【问题描述】:我正在寻找一种将 javascript 代码块插入到 ASP.NET 页面末尾的方法。
Page.ClientScript.RegisterClientScriptBlock(typeof(Page), "showVideo", sScript, true);
正在附加到正文,但 js 代码总是请求某些 js 文件未加载或某些函数位于脚本下方。
如何将动态生成的脚本附加到正文底部?
感谢您的帮助。
【问题讨论】:
这能回答你的问题吗? Difference between RegisterStartupScript and RegisterClientScriptBlock? 【参考方案1】:我们正在使用类似的东西
public static void GenerateJsTag(this TemplateControl page, string jsCode)
var jsLink = new htmlGenericControl TagName = "script", InnerHtml = jsCode ;
jsLink.Attributes.Add("type", "text/javascript");
page.Controls.Add(jsLink);
希望这会有所帮助;)
【讨论】:
谢谢托马斯。你的解决方案也很好。我现在找到了答案并发布了,但我会标记你的答案。再次感谢。【参考方案2】:Adding Client-Side Script Blocks with RegisterStartupScript() and RegisterClientScriptBlock()
这两种方法之间的唯一区别是每种方法都发出脚本块。 RegisterClientScriptBlock() 发出脚本块在 Web 窗体的开头(紧跟在标记之后),而 RegisterStartupScript() 发出脚本块在 Web 窗体的末尾(就在 </form>
标记之前)。
【讨论】:
非常重要的是要注意 RegisterScript 方法与 相关,而不是 body 或 html 标签。 @uzay95 感谢您的澄清。 你会认为这些方法会有更多描述性的名称,例如 RegisterScriptAtBeginning() 和 RegisterScriptAtEnd(),因为我仍然不记得哪个是哪个。但我猜那是微软以上是关于将 javascript 代码段附加到 body 标记的末尾的主要内容,如果未能解决你的问题,请参考以下文章
php 如果在Genesis主题中启用了JavaScript,则添加一个小内联脚本以将`js`类附加到body标记