2010-05-13 3 views
1

XMLHttpRequest.send()은 어떻게 사용합니까?JavaScript에서 XMLHttpRequest.send() 사용

다음과 같이 자바 스크립트에서 내 코드는 다음과 같습니다

str_xml+="<xml_to_be_submitted><request_xml><client_id>"+document.frmCallEntryAdd.cboCLIENT.options[document.frmCallEntryAdd.cboCLIENT.selectedIndex].value+"</client_id></request_xml></xml_to_be_submitted>"; 
    var obj_http=new ActiveXObject("Microsoft.XMLHTTP"); 
    var str_url="ClientModuleFetch.aspx"; 
    var str_http_method="post"; 
    obj_http.open(str_http_method,str_url,false); 
    obj_http.SetRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
    obj_http.send(str_xml); 
    var str_reply=obj_http.ResponseText; 


    var xmlResponse = str_reply; 

    var objXmlDOM=new ActiveXObject("Microsoft.XMLDOM"); 

어떤 몸은 내가 잘못 뭐하는 거지 말씀해 주시겠습니까?

답변

1

하나의 경우 사용자의 방법은 IE에서만 작동합니다 (공용 웹 사이트가 아닌 것이 좋음). 두 번째 오류는 SetRequestHeader의 철자가 S로 대문자 인 것입니다. setRequestHeader으로되어 있습니다.

정확히 어떤 오류 메시지 (줄 번호 포함)를 게시 할 수 있습니까?

0

게시 된 데이터가 이 아니며, a=b&c=f입니다.

게시 된 데이터는 application/xml 또는 text/xml이며 일반적으로 SOAP 패킷을 수동으로 구성하지 않는 한 일반적으로 XMLHttpRequest와 함께 사용되지 않습니다.

URL 인코딩 된 매개 변수를 사용할 수있는 스크립트 사용 가능 서비스 엔드 포인트를 호출하고 있으므로 수동으로 생성 된 XML이 게시 할 적절한 데이터가 아닐 수 있습니다.

그렇지 않은 경우 JavaScript에서 SOAP을 호출하도록 주장하는 사람들을 위해 예약 된 특별구를 찾아야합니다. 나는 너를 부러워하지 않는다. ;-)

반면에 반환은 구문 분석해야 할 XML 일 수 있습니다. 나는 당신의 코드가 IE 중심 인 것처럼 보이는 것처럼 XMLHttpRequest 구조와 XML 파싱에 더 많은 교차 브라우저 호환 방법을 사용할 것을 제안한다.

또한 다른 곳에서 언급했듯이 오타가 있습니다. SetRequestHeaderssetRequestHeaders이어야합니다.

+0

XML 응답을 받기 위해 str_xml을 전송하는 올바른 방법을 제안 할 수 있습니까? ..... – Harun

+0

@harun - 내가 수행 할 수 있기 전에 어떤 유형의 서비스를 호출해야하는지 알 필요가 있습니다. 예 : 그것 asp.net webservice (선택적 scriptservice 특성), 아약스 허용 wcf 서비스, 일부 임의의 비누 서비스를 제어 할 수있는 등 ... –

+0

안녕하세요, 사실 나는 asp.net 함께 javaScript를 사용하고 있습니다. 오래된 응용 프로그램이며 asp.net 웹 서비스를 사용하고있을 수 있습니다.) 나는 POST 메서드를 통해 ID를 다른 페이지로 보내고 싶다. DB에서 레코드 세트를 가져오고있다. 그 레코드를 응답 XML로 가져와야합니다. 페이지를 새로 고치지 않고 같은 페이지 내에서이 작업을 수행하는 데 페이지 메서드 사용에 익숙합니다. 그러나 나는 다른 방법을 알고 싶다. – Harun

관련 문제