ajax send()函数的问题

时间:2013-05-30 09:29:21

标签: ajax html5

<!DOCTYPE html>
<html>
<head>
<title>Lesson 18: Making AJAX Calls</title>
</head>
<body>
<h1>Lesson 18: Making AJAX Calls - Plain Text Response</h1>
<div>
<h2 id="myHeader">Click the button to call your data</h2>
<input type="button" value="Click Me!" onclick="getText('test.txt')" />
</div>
<script type="text/javascript">
var myRequest;
function getText(url)
        {        
            if (window.XMLHttpRequest)        
            {        
            myRequest = new XMLHttpRequest();        
            }        
            else        
            {        
            myRequest = new ActiveXObject("Microsoft.XMLHTTP");        
            }
        myRequest.open("GET", url, true);
        myRequest.send(null);    
        myRequest.onreadystatechange = getData;        
        }
function getData()        
        {
        var myHeader = document.getElementById("myHeader");
        if (myRequest.readyState ===4)        
            {        
        if (myRequest.status === 200)    
            {
        var text = myRequest.responseText;
        myHeader.firstChild.nodeValue = text;        
            }        
        }        
        }        
        </script>            
        </body>
        </html>

此代码来自本教程:http://www.html.net/tutorials/javascript/lesson18.php

问题:

这是什么意思:myRequest.send(null);它和myRequest.send()之间有什么区别??

1 个答案:

答案 0 :(得分:0)

没有区别。 .send(null)表示您在请求正文中发送“null”内容。 .send()意味着你在请求体中没有发送任何内容。 在GET请求的情况下没有区别,因为请求正文没有发送。 如果POST请求,也不会有任何区别。

请参阅:Why do we pass null to XMLHttpRequest.send?