我之前问过这个问题,但我提供的例子没有提供我真正的问题。
我想使用php变量从表单中获取输入并在javascript函数中使用它。我不直接使用javascript,因为有问题的变量的内容是从mysql数据库获得的,我不认为我有办法使用javascript访问数据库。
低于我目前的代码:
<!DOCTYPE html>
<html>
<head>
<script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
<script>
function initialize() {
var slon1 = '<?php echo (json_encode($siteLon1)); ?>';
self.alert(slon1);
//some code goes here.
}
</script>
</head>
<body>
<div align="center">
<form method="get">
<label>Choose Site</label>
<select name='ps' id="ps" data-inline="true">
<?php
$use = $fgmembersite->getsites($fgmembersite->UserFullName());
$fields_num = mysql_num_fields($use);
while($row = mysql_fetch_row($use))
{
echo "<option value='".$row[0]."'>".$row[0]."</option>";
}
?>
</select>
<input type="submit" name="submit" value="View">
</form>
</div>
<div id="map-canvas"></div>
</body>
</html>
令人惊讶的是,self.alert(slon1)
上显示的结果为空;当我只是加载页面或从下拉框中选择并单击视图时。请有人帮我解决这个问题。
感谢。
答案 0 :(得分:1)
JSON编码器应引用变量,因此手动使用单引号会触发JavaScript解析错误。检查JS控制台。这应该生成有效的JS代码:
var slon1 = <?php echo (json_encode($siteLon1)); ?>;