Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在JS中调用函数不会';我不喜欢争论_Javascript_Ajax_Function - Fatal编程技术网

Javascript 在JS中调用函数不会';我不喜欢争论

Javascript 在JS中调用函数不会';我不喜欢争论,javascript,ajax,function,Javascript,Ajax,Function,在我的JS文件中,我从一个函数调用另一个函数,起初我只使用它的名称handleResponse来调用它,没有任何参数 然后我尝试添加参数(当然是通过更改函数签名),但没有得到任何结果,因此我尝试将函数调用为handleResponse(),但即使这样也不起作用。 为什么不能使用括号或参数调用函数 以下是功能: 主要问题: function sendRequest() { var username = ""; var game_id = -1; username = doc

在我的JS文件中,我从一个函数调用另一个函数,起初我只使用它的名称
handleResponse来调用它,没有任何参数
然后我尝试添加参数(当然是通过更改函数签名),但没有得到任何结果,因此我尝试将函数调用为
handleResponse()
,但即使这样也不起作用。
为什么不能使用括号或参数调用函数

以下是功能: 主要问题:

function sendRequest()
{
    var username = "";
    var game_id = -1;
    username = document.getElementById("username").value;
    game_id = document.getElementById("game_id").value;
    req.open('GET', 'check_for_opponent.php?username='+username+'&game_id='+game_id);
    req.onreadystatechange = handleResponse(username, game_id); <--- THIS IS THE CALL
    req.send(null);
}

}

您需要将该调用包装在匿名函数中:

    req.onreadystatechange = function() {
      handleResponse(username, game_id); <--- THIS IS THE CALL
    };
req.onreadystatechange=函数(){

HandlerResponse(用户名,游戏id);您需要将该调用包装在匿名函数中:

    req.onreadystatechange = function() {
      handleResponse(username, game_id); <--- THIS IS THE CALL
    };
req.onreadystatechange=函数(){

HandlerResponse(用户名,游戏id);您应该将函数引用设置为
onreadystatechange
,而不执行该函数。您可以使用闭包来实现您尝试执行的操作

req.onreadystatechange = function(){
    handleResponse(username, game_id);
}

您应该将函数引用设置为
onreadystatechange
,而不执行该函数。您可以使用闭包来实现您尝试执行的操作

req.onreadystatechange = function(){
    handleResponse(username, game_id);
}

如何在HandlerResponse中获取req.readyState?是否来自父函数?如何在HandlerResponse中获取req.readyState?是否来自父函数?匿名函数是围绕调用“HandlerResponse”的函数。它是匿名的,因为它没有名字;这就是它的全部含义。匿名函数是围绕调用“HandlerResponse”的函数。它是匿名的,因为它没有名字;这就是它的全部含义。