在javascript函数中添加脚本src

时间:2014-04-18 05:34:30

标签: c# javascript jquery asp.net ajax

在我在母版页中添加更新面板的项目中,即使我在母版页中添加了js脚本src,我在不同页面中的jquery效果也不起作用。当我用Google搜索这个问题时,我找到了一个解决方案,它位于

之下
function EndRequestHandler(){        
//document.write("<script type='text/javascript' src='js/Blood_preesure.js'>")
}

然后

function load(){
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}

并在body onload调用此函数

<body onload="load()">
  1. 在我的EndRequestHandler()函数中,我想调用脚本src。 我用document.write尝试了它但在回发后整个页面都是空白的并且什么也没显示。
  2. 当我添加我的js文件中的完整函数时,一切正常,但我不想内联代码,因为将代码外部化视为好的做法。

2 个答案:

答案 0 :(得分:0)

因为document.write();每次都会覆盖文档。

您可以按document.createElement('script')创建一个脚本元素并使用它,最后添加到DOM

答案 1 :(得分:0)

文档写在这里不起作用,

function loadjscssfile(filename, filetype){
 if (filetype=="js"){ //if filename is a external JavaScript file
  var fileref=document.createElement('script')
  fileref.setAttribute("type","text/javascript")
  fileref.setAttribute("src", filename)
 }
 else if (filetype=="css"){ //if filename is an external CSS file
  var fileref=document.createElement("link")
  fileref.setAttribute("rel", "stylesheet")
  fileref.setAttribute("type", "text/css")
  fileref.setAttribute("href", filename)
 }
 if (typeof fileref!="undefined")
  document.getElementsByTagName("head")[0].appendChild(fileref)
}


    function load(){
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(EndRequestHandler);
}

function EndRequestHandler(){
 loadjscssfile(yourfilename, 'js');
}