将var与$.getScript()一起使用

Using a var with $.getScript()

本文关键字:一起 getScript var      更新时间:2023-09-26

我正在使用$.getScript()调用外部文件。调用变量值时是否可以传递该值?

示例:

var passVal = "ch967";
$.getScript(ext.js); //how can I use `passVal` within ext.js

ext.js

if(passVal=="ch967"){
   var a = "Relax Chairs"
} else {
   var a = "Table Chairs"
}

调用变量值时是否可以传递该值?

不直接,不,你必须把它放在全局的某个地方,然后脚本从那里访问它。那可能是

  • 一个全局变量

  • sessionStorage

或者只是脚本可以检测到的任何其他全局状态。

您只需要在全局范围内声明您的变量,例如:

window.passVal = "ch967";

像这样,您可以访问$.getScript调用的外部脚本中的变量。

希望这能有所帮助。

是的,内联javascript中声明的全局变量可以在使用$.getScript() 加载的外部javascript页面中访问

如果

var passVal = "ch967";不工作

尝试

window.passVal = "ch967";

$.getScript("ext.js");

您可以通过以下方式传递变量:

var passVal = "ch967";
$.getScript('ext.js?passVal='+passVal);

然后在ext.js文件中,您需要两件事:一个新函数和使用它来获得参数:

function getParameterByName(name) {
    name = name.replace(/['[]/, "''[").replace(/[']]/, "'']");
    var regex = new RegExp("[''?&]" + name + "=([^&#]*)"),
        results = regex.exec(location.search);
    return results === null ? "" : decodeURIComponent(results[1].replace(/'+/g, " "));
}
getParameterByName('passVal');