2013-10-29 65 views
1

我试图找到一种方法来动态注入新的JavaScript函数,而无需执行页面加载。我有一个表格用于放入库存项目,我想根据选择哪个制造商来加载或删除功能。试图研究这个我想我可以做到这一点:动态加载和删除Javascript函数

document.getElementsByTagName("head")[0].appendChild 

我使用实例文档从http://www.javascriptkit.com/javatutors/loadjavascriptcss.shtml拍摄。起初我不知道,如果它被调用文件等作为最后的测试,我追加小片段:

var petname="Spotty" 
alert("Pet Name: " + petname) 

,并在.js文件的末尾,收到警报。我希望能够使这个输入页面模块化和动态化。我需要更换这些功能的原因是因为每个制造商都使用所谓的“BOM”编号,该编号根据这些值给出了单位型号,电容器,电器等。现在的脚本使用onChange功能等等每次下拉选择BOM编号都会更新其正确的值。相反输入物料清单编号将从下拉菜单中选择值。如果我将JavaScript函数放置在“head”中,但是使用.appendChild时,JavaScript函数的工作方式与onChange的预期一致,但是这些函数都不起作用。我应该使用其他的东西吗?

回答

0

解决问题的最佳方法是调用一个接受BOM编号和制造类型的函数。然后取你的示范单位,冷凝器,电器基于制造型 的Javascript:

function GetDetails(bom, manufactureType){ 
    switch(manufactureType){ 
     case 'blah blah' : <do something> 
    break; 
default:break; 
    } 
} 

HTML:

<select onchange="javascript:GetDetails(<pass selected BOM here>, <pass selected MANUFACTURER here>);"></select>