我想我没有正确的语法来编写JavaScript函数并调用它以将其返回值分配给变量。

我的职能是:

getObjName(objId){
  var objName ="";
$.ajax( {
    type : "GET",
    url : "Object",
    dataType: 'json',
    data : "objId="+objId,
    success : function(data) {
    objName = data;
    }
});
  return objName;
}


我试图调用它,并将其分配给一个变量:

var objName = getObjName(objId);


但是,Eclipse告诉我“函数getObjName(any)未定义”

最佳答案

这里有两个错误。首先,您需要在function之前添加getObjName

其次,您不能异步返回变量。如果绝对必须这样做,则可以将ajax设置为同步,但是这将在ajax调用与服务器进行通信的整个时间段内阻塞正在运行的线程。

function getObjName(objId){
  var objName ="";
    $.ajax( {
        async: false,
        type : "GET",
        url : "Object",
        dataType: 'json',
        data : "objId="+objId,
        success : function(data) {
            objName = data;
        }
    });
  return objName;
}

关于javascript - 调用和编写jquery/javascript函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2665489/

10-09 15:28