2

我正在为 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');
        }
    });
}
4

3 回答 3

0

也许你还没有设置你的 php 脚本的编码:

在脚本顶部添加这一行:

<?php header('Content-type: application/json'); ?>
于 2013-03-21T09:30:27.933 回答
0

我认为ajax调用没有被执行。提交按钮发送表单但不使用 ajax。因此,您将被重定向到服务器脚本页面。

要防止这种行为,请添加return false;您的事件 onsubmit。

此代码将阻止您的 html 页面发送表单。所以ajax函数可以发送数据。

于 2013-03-20T22:24:48.577 回答
0

您可以将语法更改为以下内容:

$('#myform').on ('submit', function (e) {
    e.preventDefault ();
    //rest of your code
});

或添加

return false;

在 onsubmit 函数结束时。

于 2013-03-20T23:46:03.027 回答