사용자 정의 위젯을 만들고 있는데 jQuery와 같은 프레임 워크를 사용하지 않아야합니다. POST를 지원하는 가벼운 크로스 브라우저 객체가 필요합니다. & 콜백으로 가져오고, 온라인에서 몇 가지 솔루션을 보았습니다. 그러나 많이 포함되어 있습니다. 쓸데없는 것들.경량 AJAX 객체가 권장됩니까?
감사
사용자 정의 위젯을 만들고 있는데 jQuery와 같은 프레임 워크를 사용하지 않아야합니다. POST를 지원하는 가벼운 크로스 브라우저 객체가 필요합니다. & 콜백으로 가져오고, 온라인에서 몇 가지 솔루션을 보았습니다. 그러나 많이 포함되어 있습니다. 쓸데없는 것들.경량 AJAX 객체가 권장됩니까?
감사
는 그냥 XMLHttpRequest의 자신을 반대 사용합니다.
예를보기 위해 모질라 사이트를보고 싶은 경향이 있습니다.이 주제에 대한 좋은 설명이 있습니다.
https://developer.mozilla.org/En/XMLHttpRequest/Using_XMLHttpRequest
할 어렵지 않다, 그것은 어떤 HTTP 요청을 지원하고 당신이 그것을 사용할 수 있도록하는 방법을 쉽게에 따라 그것을 만들 원하는만큼 간단하거나 복잡하다.
jQuery에는 멋진 API가 있으므로 스타일 복사가 유용 할 수 있습니다.
UPDATE : 당신은 위의 링크를 참조해야하지만, POST가 수행 할 수있는 방법을 주로 당신이 볼 수있는 send
함수에 매개 변수를 넣어 볼
. 이 코드를 복사하지 말고, 여기에 간단한 예제 만 넣으면됩니다. 당신이 당신의 주소 표시 줄에서와, 그리고 send
에 널 (null)로 방금 URL에 넣어 GET 들어
var xhr = new XMLHttpRequest();
xhr.open("POST", "http://foo.com/submitform.php");
xhr.send(formData);
.
당신이 JQuery와 사용할 수없는 경우, 당신이 어떤 라이브러리를 사용하지 않고 처음부터 쓸 수 있습니다 : -
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
}
else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
document.getElementById("yourdiv").innerHTML=xmlhttp.responseText;
}
}
// change "GET" to "POST" if you want to POST
xmlhttp.open("GET","/yourlink",true);
xmlhttp.send();
POST 코드도 표시하고 싶지만, 예를 들어 readyState의 값 유형을 이해할 수있는 부분에 대해 배우고 싶다고 생각했습니다. –
@James Black : readyState (4 == Complete)를 제외하고 다른 것들은 트리거를 보장하지 않습니다. – mhitza
@mhitza - 나의 지적은 컨텍스트없이 코드를 게시하면 실제로 진행되고있는 작업이나 원하는대로 작동하는 방법을 이해하는 데 도움이된다는 것입니다. –
쓸데없는 점을 고려해 보니 왜 이것이 유용 할 수 있는지 설명하는 데 도움이 될 수 있습니다. –