【问题标题】:ajax call: response <->data typeajax 调用:响应 <-> 数据类型
【发布时间】:2015-02-20 11:43:37
【问题描述】:

我只是想将表单数据 (JS) 提交到 php 脚本。 我正在使用以下代码:

    form.children("div").steps({
        headerTag: "h3",
        bodyTag: "section",
        transitionEffect: "slideLeft",
        onStepChanging: function (event, currentIndex, newIndex){


            form.validate().settings.ignore = ":enabled,:hidden";
            return form.valid();
        },
        onFinishing: function (event, currentIndex){
            form.validate().settings.ignore = ":enabled";;
            return form.valid();
            },
        onFinished: function (event, currentIndex, name){
            var name = JSON.stringify($("#userName").val());
            var password =JSON.stringify( $("#password").val());

            $.ajax({
                url: "getInfo.php",
                type: "POST",
                dataType: "json",
                data: {username: name, password: password},
                success: function(response) {
                    $('#response').append(response);                        
                }

            });

        }
    });

脚本“getInfo”接收发送的数据“用户名”和密码”,并可以执行进一步的操作,如数据库调用等。现在我想回显一个表,如:

echo "table..[some data]..";

但是对应的 div“响应”仍然为空.. 如果我将 dataType 更改为“text”,则 .append 实际上会附加一些内容(虽然不正确..)但现在网络服务器会抛出一个关于使用的常量的错误php脚本中的其他地方..

我想我在这里遗漏了一个基本的东西,但我真的没有找到解决方案......

【问题讨论】:

  • 更改dataType 不会对服务器脚本产生任何影响。它不会向服务器发送任何内容,它只是改变 jQuery 对响应的处理。
  • 问题出在您的 PHP 代码中。发布代码和确切的错误消息。
  • 参数上无需调用JSON.stringify。数据将使用x-www-form-urlencoded 格式进行编码。

标签: javascript php ajax


【解决方案1】:

在“getInfo.php”中的 json_encode(array()) 中回显,因为您的数据类型是 json

【讨论】:

  • 太好了,我一直认为“dataType”实际上会对服务器端产生影响。我提到的“错误”实际上是来自 WAMPP 的“通知”:“注意:使用未定义的常量a - 在第 8 行的 C:\wamp\www\getInfo.php 中假定为 'a'" : $file_handle=fopen("log.txt",a);
  • 我发现可以在php.ini中禁用通知消息。
  • ...但是任何人...这是继续工作的“正确”方式吗?我的意思是我会建立这样的网站吗?在 js 中构建一些花哨的 gui,使用 php 处理数据并将数据发送回 js,js 将数据“附加”到实际的 html div?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-04-14
  • 2013-01-03
  • 2021-10-13
  • 1970-01-01
  • 2012-03-27
  • 1970-01-01
  • 2017-12-28
相关资源
最近更新 更多