这个Ajax程序不起作用。它有一些语法错误,我无法弄清楚。
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
</head>
<body>
<div class="click">Click me<div>
<div class="file"></div>
<script>
$(function(){
$(".click").click(function(){
$.ajax({
beforeSend: function(){
$(".file").html(<img src="a.gif" alt="Smiley face" height="42" width="42"> )
},
url: "a.txt",
type: "POST",
data: {
id : 0
},
success: function(results){
$(".file").html(results);
}
});
});
});
</script>
</body>
</html>
Firebug 抛出错误:
SyntaxError: missing ) after argument list
$(".file").html("<img src="a.gif" alt="Smiley face" height="42" width="42">" )
你在
$(".file").html('<img src="a.gif" alt="Smiley face" height="42" width="42"> ')
在你的代码中:
$(".file").html(.....);
html 标记内的内容应包含单引号,例如:
$(".file").html('<img src="a.gif" alt="Smiley face" ....');
你缺少一些引号:
$(".file").html(<img src="a.gif" alt="Smiley face" height="42" width="42"> )
^---here ^--here
你不能把一些裸露的html拍打到javascript代码块中,并期望事情能正常工作。你在一个Javascript块中 - Javascsript语法规则适用,这意味着html必须括在引号中,以便将其视为字符串。
代码中的语法错误
缺少引号
$(".file").html('<img src="a.gif" alt="Smiley face" ....');
^ ^