在Phonegap中加载AJAX成功数据[对象文档]

时间:2012-03-30 13:32:35

标签: javascript jquery ajax cordova

我在手机应用程序中使用AJAX调用时遇到了一些麻烦。

我有一个带有表单的html文件:

<form class="well" name="frmMessage">
  <h4 id="txtToName"></h4>
  <label>Subject</label>
  <input type="text" class="span3" name="txtMsgSubject" />
  <label>Body</label>
  <textarea class="span3" name="txtMsgBody"></textarea>
  <button onClick="message_send(); return false;" type="submit" name="btnSend" class="btn btn-large">Send</button>
</form>

我通过AJAX调用加载该表单,成功后我将其注入文档

$.ajax({
    method: 'GET',
    url: 'templates/message_form.html',
    success: function(data){               
       // display form
       display_message('Compose message below');
       display_setContent(data);
    },
    error: function(x,t,e){
       display_message('Could not load message form');
    }
}); 

此代码在屏幕上显示:

[object Document]

...而不是我期待的HTML文档。我在设置页面上使用了相同的方法,它完美运行:

$。AJAX({        方法:'GET',        url:'templates / settings_form.html',        成功:函数(数据){            display_setContent(数据);            display_message('更新你的设置');        },        错误:function(x,t,e){            display_message('抱歉,无法加载您的设置');        }    });

出了什么问题?

如果我取出form标签,它可以正常加载,但我想保留它,因为我正在使用需要它的引导程序。此外,设置页面包含它:

<h4 id="txtToName"></h4>
<label>Subject</label>
<input type="text" class="span3" name="txtMsgSubject" />
<label>Body</label>
<textarea class="span3" name="txtMsgBody"></textarea>
<button onClick="messages_send(); return false;" type="submit" name="btnSend" class="btn btn-large">Send</button>

2 个答案:

答案 0 :(得分:0)

尝试使用JSON.stringify(data)。您可以在那里看到完整的响应,然后您可以解析它。

答案 1 :(得分:0)

你里面的ajax调用set属性

dataType: "html"
dataType: "text"
然后尝试使用display_setContent进行设置。同样在您的html页面中,您可以专门提及内容类型为&#34; text / html&#34;
希望这适合您。