JavaScript在我的本地MAMP服务器上不起作用


JavaScript does not work when on my local MAMP server

我最近将我的站点上传到MAMP服务器,却发现JavaScript无法工作。当在我的计算机上作为文件查看时,脚本工作良好。然而,现在我的项目被保存为服务器上的PHP文件,JavaScript不再工作。下面的代码在我的计算机上运行良好,但在服务器上不行。

<script type="text/javascript" src= "http://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 

下面我通过公共dropbox文件夹链接了我的网站文件。JavaScript正在从我的index.php文件的底部(在body标签上方)调用,js文件夹包含文件bootstrap.js,这是我在调用时遇到麻烦的文件。

<p>Some HTML</p>
<?
'Stripe'Stripe::setApiKey("#");
$token = $_POST['#'];
try {
$charge = 'Stripe'Charge::create(array(
"amount" => 2000, // amount in cents, again
"currency" => "usd",
"source" => $token,
"description" => "Example charge")
);
} catch('Stripe'Error'Card $e) {
}
?>

谢谢你的帮助和回复,但是我找到了我问题的罪魁祸首。问题在于我如何将PHP脚本放在HTML中。我犯了一个简单的错误,将PHP放在HTML和Javascript元素之间,导致PHP下面的元素无法执行。我发现这个Stack Overflow链接非常有用。也感谢@bresson指出我的"src=js/bootstrap.js"前面不必要的斜杠,这很有帮助。

<p>Some HTML</p>
<?
'Stripe'Stripe::setApiKey("#");
$token = $_POST['#'];
try {
$charge = 'Stripe'Charge::create(array(
"amount" => 2000, // amount in cents, again
"currency" => "usd",
"source" => $token,
"description" => "Example charge")
);
} catch('Stripe'Error'Card $e) {
}
?>
<script type="text/javascript" src= "http://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
<script type="text/javascript" src= "js/bootstrap.js"></script> 

我需要这个

<p>Some HTML</p>

<script type="text/javascript"src="http://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script> 
<script type="text/javascript" src= "js/bootstrap.js"></script> 
 <?
'Stripe'Stripe::setApiKey("#");
$token = $_POST['#'];
try {
$charge = 'Stripe'Charge::create(array(
"amount" => 2000, // amount in cents, again
"currency" => "usd",
"source" => $token,
"description" => "Example charge")
);
} catch('Stripe'Error'Card $e) {
}
?>

在不知道错误的情况下,我会寻找最简单的修复方法,看起来bootstrap.js的文件路径可能是不正确的(正如humble.rumble所提到的)。尝试从CDN中提取以下bootstrap.js文件:

<!-- Latest compiled and minified JavaScript -->
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"> </script>

或者,你的bootstrap文件从域root引用bootstrap.js:

<script type="text/javascript" src= "/js/bootstrap.js"></script>

删除斜杠"**/**js/bootstrap.js",只引用bootstrap相对于index.php:

<script type="text/javascript" src= "js/bootstrap.js"></script>