Drupal 7给解析错误:语法错误,意外T_STRING
问题描述:
目标:使用地理定位呈现谷歌地图。Drupal 7给解析错误:语法错误,意外T_STRING
我想在我的网站上实现下面的示例。
http://code.google.com/apis/maps/documentation/javascript/services.html#Geocoding
工作演示:http://code.google.com/apis/maps/documentation/javascript/examples/geocoding-simple.html
我在drupal_add_js()在hook_init(执行代码),但我得到一个错误
解析错误:语法错误,意外T_STRING in /home/vishal/public_html/dev/sites/all/modules/customvishal/customvishal.module on line 43
以下是我的代码:
drupal_add_js('
var geocoder;
var map;
function initialize()
{
geocoder = new google.maps.Geocoder();
var latlng = new google.maps.LatLng(-34.397, 150.644);
var myOptions = {
zoom: 8,
center: latlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
}
var address = "pune,india";
var latlng = new google.maps.LatLng();
geocoder = new google.maps.Geocoder();
geocoder.geocode({ 'address': address}, function(results, status)
{
if (status == google.maps.GeocoderStatus.OK)
{
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker
({
map: map,
position: results[0].geometry.location
});
}
else
{
alert("Geocode was not successful for the following reason: " + status);
}
}
);
”, 阵列( '类型'=> '内联', '范围'=> '标题', '重量'=> 5)
);
答
首先,不要像这样内嵌大量的JavaScript内联。将代码放在另一个文件中,并使用drupal_add_js()添加该文件。
对于两种情况,如果您打算忽略该情况,请注意以geocoder.geocode
开头的行中的单引号正在结束字符串。之后的一切都让解析器感到困惑。
是的,这是单引号混淆解析器。我以后会把所有的js放在一个sep文件中。 – 2012-01-03 11:56:59