2012-04-21 73 views
0

我想在点击按钮时动态地在ajax中包含js文件。我基本上想要做的是,我想要点击一个按钮时加载地图。对于我已经使用了两个文件:在ajax中动态加载js文件

<script type="text/javascript" src="http://maps.google.com/maps?..."></script> 
<script type="text/javascript" src="jquery.gmap-1.1.0-min.js"></script> 

现在我想的是,当用户点击一个按钮,然后这两个文件得到加载和地图地没有让网页显示刷新。

此外,当用户点击按钮,这两个脚本已被加载,然后再次点击它不会使脚本再次加载。

任何有关此事的帮助将不胜感激。


Thnx为您的答复。无论如何,我试图使用$脚本和 RequireJs,但地图无法加载。

这里是我的代码,我已经wriiten:

<script type="text/javascript" src="../js/jquery-1.7.js"></script> 
<script src="../js/script.js"></script> 
<script> 
function googlemaps() 
{ 
    $script('"http://maps.google.com/maps?file=api&..', 'maps', function() 
    { 
     $script('../js/jquery.gmap-1.1.0-min.js', 'jquery', function() { 
     $("#map").gMap({address: "USA", markers: [{address: "USA"}]}); 
     }); 
    }); 
} 
</script> 

<input name="Butoon" type="button" value="Button" onclick="javascript: googlemaps();" /> 

<div id="map"></div> 

,我得到的错误是:“G_NORMAL_MAP没有定义”和“没有定义的GMap2” (错误来了,因为 jQuery的。 gmap-1.1.0-min.js在 http://maps.google.com/maps?file=api& ..加载之前加载)。在使用RequireJs时重复同样的错误 。你能否说我在哪里做错了 。

在此先感谢。

回答

3

你应该看看一些脚本/模块加载器,而不是像$criptRequireJS。基本上,他们做同样的事情,等等。