英特尔XDK实施问题中的GET / POST请求

时间:2014-06-10 07:44:39

标签: javascript jquery intel intel-xdk

我想转换这个jQuery代码,以便它可以在Intel XDK中使用。

代码:

lastRecord=0;
        function loadNews(){
            $('#sample').html( 'hello' );
            $.get( 
                "queryNews.php?lastRecord="+lastRecord,
            function( data ) {
                $('#news_mesgs').append( data )
                .listview( 'refresh' );
                    }
                );
            }

转换:

<script>
        var parameters = new AppMobi.Device.RemoteDataParameters();
        parameters.url = "http://i.cs.hku.hk/~hsbashir/Project_Work/Listview/queryNews.php";
        parameters.id = "12345";

        AppMobi.device.getRemoteDataExt(parameters);    

        var news = document.getElementById("news_mesgs");


        news.addEventListener("appMobi.device.remote.data",getRemoteDataEvent,false);
            var getRemoteDataEvent=function(event)
            {
                if(event.success==false)
                {
                alert("error obtaining remote data");    
                }
                else
                {
                alert("success: ");
                news.innerHTML += event.response;    
                }
            }    
        </script>

然而,当我在模拟器中运行我的应用程序时,没有看到警报或任何事情。

1 个答案:

答案 0 :(得分:0)

一个问题是您在使用后已经指定了getRemoteDataEvent,因此当您在news.addEventListener中使用undefined时,它就是news.addEventListener(...)。虽然函数声明在其范围内被“提升”,因此顺序无关紧要,当你通过将它分配给变量来创建一个函数时(顺便说一句好习惯),你需要这样做按照正确的顺序。

尝试将{{1}}行添加到getRemoteDataEvent之后,看看是否会改变。