0

(Facebook を使用してサイトにログインしたユーザーの) ユーザー ID を返す関数があります。

FB.getLoginStatus(function(response) {
    if (response.status === 'connected') {
        //logging the User ID here....
        console.log(response.authResponse.userID);
    }
});

スクリプトの後半で、受け取った多数の var を使用して Ajax を起動します。

 multiUploader.prototype._uploader = function(file,f){
    if(typeof file[f] != undefined && self._validate(file[f].type) > 0){
        var data = new FormData();
        var ids = file[f].name._unique();
        data.append('file',file[f]);
        data.append('index',ids);
        data.append('title', $(".giveawayNameInput").val());

        $(".dfiles[rel='"+ids+"']").find(".progress").show();
        $.ajax({
            type:"POST",
            url:this.config.uploadUrl,
            data:data,
            cache: false,
            contentType: false,
            processData: false,
            success:function(rponse){

                console.log(rponse);
                //Spinner can be removed here...
            }
        });
    } else
        alert("Invalid file format - "+file[f].name);
}

data.append()最初の関数から受け取ったユーザー ID を追加したいと思います。response.authResponse.userIDグローバル変数として定義せずにこれをどのように達成できますか?

4

1 に答える 1

0

これを行うには、function(file,f) 内で FB.getLoginStatus を呼び出す必要があります。これには、FB.getLoginStatus スコープ外の応答値を保持し、function(file,f) のスコープで使用できるようにする function(file,f) 内でローカル変数を宣言する必要があります。 .

于 2013-08-06T12:31:38.487 に答える