我试图创建一个执行此功能callFunction();
我正在尝试使用AJAX从PHP文件执行JS函数
因为我有AJAX responseText
我尝试使用
<script type="text/javascript"> callFunction(); </script>
但它不起作用,我试图做这样的事情
function exec(func , arg) {
func(arg); // executes the function
}
如果不存在类似的东西,如何从PHP请求中调用AJAX函数(通过GET方法)
我尝试时得到的错误是
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 :(得分:0)
确保将有效的函数名称传递给执行它的函数,如下所示:
function saySomething($something){
console.log($something);
}
function executeFunction(func,arg){
func(arg);
}
executeFunction(saySomething,"Yay, it works!");
&#13;
答案 1 :(得分:0)
好的,我想我看到了问题,你将一个字符串传递给executeFunction()
在这种情况下尝试这一点,确保您分配给变量fnName&amp;的值。 params是字符串,没有JSON对象。例如,您可能需要执行数据[&#34; fnName&#34;]以从数据JSON对象中提取函数名称。您始终可以通过将它们转储到控制台来检查数据类型来测试它。
function say($something) {
console.log($something);
return;
}
var fnName = "say";
var params = "Hello world"
window[fnName](params);
&#13;