我正在为iphone和android制作一个phonegap应用程序。 我的代码在浏览器中工作正常但是当我尝试使用phonegap时,手机显示json结果并且不执行提交功能中的代码,这是我点击提交按钮时得到的图片: http://i48.tinypic.com/21l1km0.png 我使用$ ajax()和json.eval(),但我得到了相同的结果,
form.onsubmit = function()
{
var formData = new FormData(form);
$.ajax({
type: 'POST',
data: formData,
url: 'http://server.com',
success: function(data){
console.log("wa3 1");
alert('Your comment was successfully added');
},
error: function(){
console.log("wa3 2");
alert('There was an error adding your comment');
}
});
}
答案 0 :(得分:0)
我认为ajax调用没有执行。提交按钮发送表单但不发送ajax。 因此,您将被重定向到服务器脚本页面。
要防止出现此问题,请在提交的事件中添加return false;
。
此代码将阻止您的html页面发送表单。所以ajax函数可以发送数据。
答案 1 :(得分:0)
您可以将语法更改为以下内容:
$('#myform').on ('submit', function (e) {
e.preventDefault ();
//rest of your code
});
或添加
return false;
在onsubmit函数结束时。
答案 2 :(得分:0)
也许您还没有设置php脚本的编码:
在脚本顶部添加此行:
<?php header('Content-type: application/json'); ?>