0

ボタンをクリックすると、soapRequest is not definedエラーが発生します。

このエラーを修正するにはどうすればよいですか?

私のコード:

<head>
  <script type="text/javascript">
    var soapRequest = function () {
        var str = //the soap request code

          function createCORSRequest(method, url) {
            var xhr = new XMLHttpRequest();
            if ("withCredentials" in xhr) {
              xhr.open(method, url, false);
            } else if (typeof XDomainRequest != "undefined") {
              alert xhr = new XDomainRequest();
              xhr.open(method, url);
            } else {
              console.log("CORS not supported");
              alert("CORS not supported");
              xhr = null;
            }
            return xhr;
          } //end of function createCORSRequest//

        //calling the xhr 
        var xhr = createCORSRequest("POST",
          "https://thelocalserver/therequest?wsdl");

        if (!xhr) {
          console.log("XHR issue");
          return;
        }
        xhr.onload = function () {
            var results = xhr.responseText;
            console.log(results);
          } //end of function onload

        xhr.setRequestHeader('Content-Type', 'text/xml');
        xhr.send(str);
      } //end of function soapRequest//

  </script>
</head>

<body>
  <form name="Demo" action="" method="post">
    <div>
      <input type="button" id="API" value="Soap" onClick="soapRequest" />
    </div>
  </form>
</body>
<html>
4

2 に答える 2

0
<input type="button" id="API" value="Soap" onClick="soapRequest()" />

参照:- http://www.w3schools.com/jsref/event_onclick.asp

「onclick」イベントで関数を呼び出す必要があります

于 2016-12-12T08:02:50.263 に答える
0

次のことを試してください。

Javascript:

var soapRequest = function (){
    //the soap request code
    var createCORSRequest = function (method, url) { 
        var xhr = new XMLHttpRequest();
        if ("withCredentials" in xhr)  { 
            xhr.open(method, url, false); 
        } else if (typeof XDomainRequest != "undefined") { 
            var xhr = new XDomainRequest(); 
            xhr.open(method, url); 
        } else {
            console.log("CORS not supported"); 
            alert("CORS not supported"); 
            xhr = null; 
        } 
        return xhr; 
    }//end of function createCORSRequest//

    //calling the xhr 
    var xhr = createCORSRequest("POST", "https://thelocalserver/therequest?wsdl");

    if (!xhr){ 
        console.log("XHR issue"); 
        return; 
    } 

    xhr.onload = function (){
        var results = xhr.responseText; 
        console.log(results); 
    }//end of function onload

    xhr.setRequestHeader('Content-Type', 'text/xml'); 
    xhr.send(str);
}//end of function soapRequest//

HTML:

<form name="Demo" action="" method="post">
    <div>
        <input type="button" id="API" value="Soap" onClick="soapRequest()" />
    </div>
</form>
于 2016-12-12T08:17:24.343 に答える