-6

这个 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">" )
4

4 回答 4

3

你有一个语法错误

$(".file").html('<img src="a.gif" alt="Smiley face" height="42" width="42"> ')
于 2013-09-09T14:19:06.877 回答
3

在您的代码中:

$(".file").html(.....);

html 标签内的内容应该有单引号,例如:

$(".file").html('<img src="a.gif" alt="Smiley face" ....');
于 2013-09-09T14:19:30.670 回答
3

你错过了一些报价:

$(".file").html(<img src="a.gif" alt="Smiley face" height="42" width="42"> )
                ^---here                                                  ^--here

不能将一些裸露的 html 放入 javascript 代码块并期望一切正常。您在 Javascript 块中 - 适用 Javascsript 语法规则,这意味着 html 必须用引号引起来,因此它被视为字符串。

于 2013-09-09T14:19:56.430 回答
1

代码中的语法错误

缺少报价

$(".file").html('<img src="a.gif" alt="Smiley face" ....');
                ^                                       ^
于 2013-09-09T14:20:18.607 回答