显示来自Web服务的数据

时间:2013-05-13 10:11:38

标签: jquery ajax cordova

$.ajax(
        {
            url:"http://date.jsontest.com",
            type:"GET",             
            accepts:"utf-8",
            success: function(data){

                    navigator.notification.alert("successful"+data.toString());

            },
            error: function(){
                    navigator.notification.alert("Unsuccessful");
            }
        });

上述代码不显示来自Web服务的数据。它只显示一个带有“成功”字符串的警告框。

我该如何解决这个问题?

5 个答案:

答案 0 :(得分:1)

您只需将 dataType 添加到您的ajax调用中,例如:

dataType: "json",

你应该能够获得成功的方法,如:

console.log("successful: " + data.time);
alert("successful: " + data.time);

实际上,您的ajax调用会产生以下结果:

{
   "time": "10:21:31 AM",
   "milliseconds_since_epoch": 1368440491978,
   "date": "05-13-2013"
}

我刚刚在警报中获得时间,您也可以以类似的方式获取其他值。

答案 1 :(得分:0)

尝试像这样使用

$.ajax({
            cache : false,
            type : 'GET',
            async : false,
            url : "URL",
            data : "<hello></hello>",
            dataType : "xml",
            success : function(xml) {
                var endUser = $(xml).find('Username').eq(0).text();
                var admin = $(xml).find('Username').eq(1).text();
                var endUserPassword = $(xml).find('Password').eq(0).text();
                var adminPassword = $(xml).find('Password').eq(1).text();
                checkLogin(endUser, endUserPassword);
            },

            error : function(xhr, ajaxOptions, thrownError) {
                alert("Error while loading the Service !!!");
                $.mobile.loading('hide');
            }
        });

答案 2 :(得分:0)

尝试使用json dataType。如果你正在响应数组。只需使用json_encode函数编码该数组,如echo json_encode(array);并成功msg尝试获取reponce。所以data.index1,data.index2

$.ajax({
            cache : false,
            type : 'GET',
            url : "URL",
            dataType : "json",
            success : function(data) {
                             alert(data.index);
            },

            error : function(xhr, ajaxOptions, thrownError) {
            }
        });

答案 3 :(得分:0)

这对我有用......

function getTest() {
       $.ajax({
           type: 'GET',
           contentType: "application/json; charset=utf-8",
           dataType: 'jsonp',
           url: 'http://date.jsontest.com?callback=?',
           data: '{}',
           success: function (data) {

              alert(data.date);

           },
           error: function (a) {
               alert(a.responseText);
           }
       });
   }

答案 4 :(得分:-1)

在您的成功功能中,使用:

$('.ajax_content').html(data);

这将在ID为ajax_content的div中显示内容,因此显然可以更改ID或创建ajax_content div。