【问题标题】:"include a php file with html code" for working with ajax response“包含一个带有 html 代码的 php 文件”,用于处理 ajax 响应
【发布时间】:2015-09-10 22:53:11
【问题描述】:

各位朋友,我遇到了一个需要处理 AJAX 响应的 php 代码问题。

php 代码不适用于 php ajax 响应:

if($_GET){
    $data['form']   =       $this   ->  AJAXFORM        ->  GetHTMLAjaxForm();
    $return = json_encode(array('form'=>$data['form']));
    echo $return;
}

GetHTMLAjaxForm() //函数

function GetHTMLAjaxForm(){
    $htmlform       =       include('adduser.php'); 
    return $htmlform;
}

adduser.php 文件有完整的 html 代码,需要用作 ajax 回调的响应,请检查它并告诉我是否有任何错误,因为当我使用它时会出现此错误:

Ajax, php respond array data error SyntaxError: JSON.parse: unexpected character at line 4 column 7 

更新 有了这个工作部分,现在存在下面列出的一个新问题:

https://stackoverflow.com/questions/32516272/html-inserted-with-ajax-not-work-with-other-js-script

【问题讨论】:

  • 您似乎正在尝试将响应解析为 JSON,如果它是 HTML 则不起作用。
  • 但一定有办法做到这一点?
  • 解析 json 是必需的,因为它将是一个数组。
  • 那么,您检查过 Ajax 请求得到的回报了吗?那是有效的 JSON(并且 JSON)吗?
  • 这告诉我与程序员合作得很好,我不能将 HTML 代码作为返回值并将其传递给 JSON_Endoce ...

标签: php ajax file include response


【解决方案1】:

要最终实现这个想法,必须通过 .ajax 来加倍 GET 请求

function GetForms(id){
    $.ajax({
        type:   "GET",
        dataType: "json",
        url:        "index.php",
        data:   {idfield:id},
        error: function(xhr,status,error){alert(error);},
        success:    function(data) {
            $("#areatitle").html(data.title);
        }
        });
    $.ajax({
        type:   "GET",
        url:        "index.php",
        data:   {idform:id},
        error: function(xhr,status,error){alert(error);},
        success:    function(response) {
            $("#formarea").html(response);
        }
    });
}

和 PHP 文件:

if($_GET){
    if(@$_GET['idfield']){
        $return = json_encode(array('title'=>'titulo nuevo'));
        echo $return;
    }
    if(@$_GET['idform']){
        $data   =       $this   ->  AJAXFORM        ->  GetHTMLAjaxForm();
        echo $data;
    }
}

实际上我想要的是简化对服务器的请求量,并且控制这一点非常重要。

如果有人有更好的想法,请在这篇文章中交流。

有了这个工作部分,现在存在下面列出的一个新问题:

https://stackoverflow.com/questions/32516272/html-inserted-with-ajax-not-work-with-other-js-script

【讨论】:

  • 需要正常工作,因为在每个 .ajax() 上运行需要采取相同步骤的不同请求..
猜你喜欢
  • 2021-05-20
  • 2012-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多