如何从服务器获取数据而不点击"提交"按钮?

时间:2015-01-18 12:28:09

标签: javascript jquery express

我有这样的信息:

<h3 id="welcomeUsername">Hello, </h3>

我想点开以下脚本:

function pageLoaded(){

        $.get( "/getUsername", function( data ) {
            $( "#welcomeUsername" ).append( data );
            alert( "Load was performed with data: "+data );
        });

    }

它基本上将用户的名称添加到欢迎消息中。但这不会自动发射。我该怎么做,并确保客户端不会重定向到新页面!

服务器端代码:

app.get('/getUsername', function(req, res){

sess=req.session;
if(sess.username!=undefined)
{
    res.send(sess.username);
}
else
{
    res.redirect('/loginPage'); //res.sendFile(__dirname +'/public/index.html');
}

});

2 个答案:

答案 0 :(得分:0)

您应该在加载页面时调用此函数:

$(document).ready(function {pageLoaded();});

如果将其添加到js中,当页面准备就绪时,将执行该功能。

答案 1 :(得分:0)

您的代码中发生的是,函数已定义,但从未调用过。在JQuery中,您可以使用函数作为参数调用$。如果这样做,它将在加载HTML DOM树后立即加载。你可以做的是添加 在您的脚本底部$(pageLoaded),所以你得到了这个:

function pageLoaded(){

    $.get( "/getUsername", function( data ) {
        $( "#welcomeUsername" ).append( data );
        alert( "Load was performed with data: "+data );
    });

}
$(pageLoaded);