2017-03-06 2 views
0

임을 만들려고 노력이 callFunction();수행하는 기능을 만들려고 노력 함수 실행 기능

내가 시도 AJAX responseText이 있기 때문에 내가 AJAX

를 사용하여 PHP 파일에서 JS 기능을 실행하기 위해 노력하고있어

<script type="text/javascript"> callFunction(); </script>

를 사용하지만이 작동하지 않았다, 필자는이

0123처럼 뭔가를 시도

그런 일이 존재하지 않는 경우 내가 (GET 메서드를 통해)는 PHP 요청에서

내가 오류를 AJAX와 함수를 호출 할 수있는 방법, 나는 그것이 시도

FUNC 함수

JS AJAX 코드

   var emailVal = document.getElementById("email").value; 
       var passVal = document.getElementById("password").value; 
       var uVal = document.getElementById("username").value; 
       var busVar = document.getElementById("businessname").value; 
       var firstVal = document.getElementById("firstname").value; 
       var params = "email=" + emailVal + "&password=" + passVal + "&businessname="+busVar + "&username="+uVal+"&firstname="+firstVal; 
       var url = "business.php"; 
       http = new XMLHttpRequest(); 
       http.open("POST", url, true); 

       //Send the proper header information along with the request 
       http.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 

       http.onreadystatechange = function() { //Call a function when the state changes. 
        if(http.readyState == 4 && http.status == 200) { 
         console.log(http.responseText); 
         exececc(http.responseText , null); 
        } 
       } 

       http.send(params); 

PHP 아니다 코드

echo '<script type="text/javascript"> callFunction(); </script>';

+0

function say($something) { console.log($something); return; } var fnName = "say"; var params = "Hello world" window[fnName](params);

당신은 더 많은 질문을 지정해야합니다. 우리에게 더 많은 코드 등을 공유하십시오. 여기에서 성취하려는 것을 말하기는 어렵습니다. –

+0

예! 나는 현재 코드를 추가하고있다 –

답변

0

좋아, 난이 문제를 볼 생각 , 문자열을 executeFunction()에 전달하고 있습니다.

그런 경우이 방법을 사용하십시오. 변수 fnName &에 지정하는 값은 문자열이며 JSON 객체가 아닙니다. 예를 들어 데이터 "[fnName"]을 수행하여 데이터 JSON 객체에서 함수 이름을 추출해야 할 수 있습니다. 데이터 유형을 확인하기 위해 콘솔에 덤프하여이를 항상 테스트 할 수 있습니다.

+0

나는 그것을 그때 일했다? 좋은 물건! – Brad

0

는이 같은 그것을 실행하는 함수에 올바른 함수 이름을 전달해야합니다

function saySomething($something){ 
 
\t console.log($something); 
 
} 
 

 
function executeFunction(func,arg){ 
 
\t func(arg); 
 
} 
 

 

 
executeFunction(saySomething,"Yay, it works!");

+0

나는 당신의 코드를 복사했다. 그리고 나에게 같은 에러를 주었다. –

+0

'func는 함수가 아니다 .' –

+0

이것은 틀린 이름을 전달하거나, 위의 saySomething을 첫번째 arg executeFunction을 호출 할 때. 또는이 함수를 선언하고있는 파일은이 호출을하기 전에 포함되어 있지 않습니다. – Brad

관련 문제