首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过$.get向javascript文件传递参数

问通过$.get向javascript文件传递参数
EN

Stack Overflow用户
提问于 2016-03-30 05:39:28
回答 2查看 268关注 0票数 0

我正在尝试为我们正在使用的一套应用程序加载一个共享头。目前,我可以拉入HTML文件,甚至可以执行javascript。

代码语言:javascript
复制
$("#header-container")
    .load("http://component.balanceinnovations.dev/header.html header", function () {
        $.getScript("http://component.balanceinnovations.dev/js/header.js");    
});

这很好用,但是我想给header.js传递一个参数。所以我试着这样做

代码语言:javascript
复制
$("#header-container")
    .load("http://component.balanceinnovations.dev/header.html header", function () {
        $.get("http://component.balanceinnovations.dev/js/header.js", { cityID: '4274356' }, undefined, 'script');  
});

在header.js中,如何引用此参数?如果有可能的话。

EN

回答 2

Stack Overflow用户

发布于 2016-03-30 06:28:43

通过使用$.get(url,成功),您正在请求从您的服务器加载JavaScript文件。不能在脚本中传递参数。

你可以这样做。

代码语言:javascript
复制
var cityID = 4274356;
$("#headercontainer").load("http://component.balanceinnovations.dev/header.html header", function () {
       $.getScript( "http://component.balanceinnovations.dev/js/header.js", function( data ) {
        //once download was performed then here you can pass your parameters into header.js.
      });    
 });

编辑:

在使用IIFE的情况下,您可以在加载header.js之前定义一个全局变量,并如下所示更改您的函数。

代码语言:javascript
复制
(function(cityID) {
  // cityID == 4274356'

})(cityID);
票数 0
EN

Stack Overflow用户

发布于 2016-03-30 06:02:48

这似乎是可能的。根据jQuery's website的说法,$.getScript函数“是一个简写的Ajax函数,相当于...”(请参阅下面的$.ajax代码)。您必须使用$.ajax函数将数据传递给服务器。通过将Ajax page中的数据属性添加到getScript page上的$.ajax示例中,它应该如下所示...

代码语言:javascript
复制
$.ajax({
  url: "http://component.balanceinnovations.dev/header.html",
  data: { cityID: '4274356' },
  dataType: "script",
  success: successFn
});

function successFn(data) {
    $("#header-container").html(data);
}
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36295592

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档