0

在页面上已经存在 ajax javascript之后,如何将我的 javascript 文件作为嵌入资源添加到页面中?NB 希望动态地执行此部分以将代码包装在用户控件中。

在 aspx 页面中:脚本管理器

代码:程序集:WebResource("Functions.js", "text/javascript")

代码:onPreRender:

ScriptManager.RegisterClientScriptResource(Me.Page,Me.GetType().BaseType,“Functions.js”)

此代码成功地将我的 javascript 代码添加到页面,但不是在 AJAX javascript 之后,因此并非我的所有功能都能正常工作。

谢谢,戴夫

4

1 回答 1

1

您可以使用 GetWebResourceUrl() 来获取嵌入脚本的路径字符串,因为它应该在页面中(可能类似于 websresource.axd?XXXX)。然后使用 RegisterStartupScript 手动插入指向该路径的脚本标记,以强制将其添加到页面末尾。像下面这样...

path = ScriptManager.GetWebResourceUrl(this.GetType(), "Fucntion.js");
ScriptManger.RegisterStartupScript(this.GetType(), "MyScript", "<script type=\"text/javascript\" src=\"" + path + "\"/>");

从服务器您也可以尝试稍后在加载过程中添加脚本,例如在 prerender 事件中。或者从客户端可以将您的脚本包装成一个负载,以便它不会在最后可能的时刻运行代码,如下所示......

function RunOnLoad()
{

     button.onclick = function()
     {
       alert("Clicked!");
     }

}
window.onload = RunOnLoad;
于 2010-07-12T10:33:33.260 回答