Передача информации facebook в скрытое поле ввода HTML - PullRequest
0 голосов
/ 22 июня 2011

У меня есть код ниже на моей странице .aspx.

<input type="hidden" id="fbinfo" name="fbinfo" value="" runat="server" />
<script src="Scripts/jquery.min.js"></script>

<div id="fb-root"></div>
<script src="Scripts/all.js"></script>   

<script>
FB.init({ 
    appId: 'thisIsMyAppId', 
    status: true, 
    cookie: true, 
    xfbml: true 
});

FB.getLoginStatus(handleSessionResponse); 

function handleSessionResponse(response) {
    if (!response.session) {
        clearDisplay();
        return;
    } 

    FB.api({
        method: 'fql.query',
        query: 'SELECT uid, first_name, last_name, FROM user WHERE uid=' + FB.getSession().uid
        },

        function(response) { 
            var user = response[0]; 
            var userInfo = document.getElementById('fbinfo'); 
            $('#fbinfo').html('user id is:' + user.uid);
        }
    );
}

Когда я его запускаю, VS IDE возвращает сообщение об ошибке, говорящее

htmlfile: неожиданный вызов доступа к методу или свойству.

И это высветило эту часть кода внутри jquery.min.js

{if(this.nodeType==1){this.appendChild(E)}

Вопрос в том, как передать значение из запрашиваемого fql в элемент управления скрытого типа ввода HTML или asp: control (например, в поле «Метка» или «Скрытое»)?

Ответы [ 2 ]

0 голосов
/ 22 июня 2011

Добавить пространство имен Facebook в тег HTML:

xmlns:fb="http://www.facebook.com/2008/fbml"

Как:

<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
0 голосов
/ 22 июня 2011

#fbinfo является элементом input, поэтому вы не можете установить html() внутри него, но вместо этого следует использовать val().

Как это:

$('#fbinfo').val('user id is:' + user.uid);

Для получения дополнительной информации ознакомьтесь с документацией val () .

...