ajax innerHTML 结果不从 PHP 返回 html 代码

Posted

技术标签:

【中文标题】ajax innerHTML 结果不从 PHP 返回 html 代码【英文标题】:ajax innerHTML result doesn`t return html code from PHP 【发布时间】:2018-05-20 15:11:53 【问题描述】:

ajax:

$.ajax(
type: "POST",
url: "calculator/panouri-simple/calcul-panouri-simple.php",
data:  $("#formular_comanda").serialize(),
success: function(result) 

     document.getElementById("show_panels").innerhtml = result;
,
error: function(result)

     console.log("Eroare:");
     console.log(result);

);

HTML:

<div id="show_panels"></div>

当我在浏览器上查看“查看页面源代码”时,&lt;div id="show_panels"&gt;&lt;/div&gt; 之间没有 html 代码。

来自 ajax 的result 正在返回一些输入,我用另一个 ajax 调用这些输入,但在 html 页面源中,这些输入不存在。

它们在浏览器中可见,但 html 代码不存在于源代码中。我希望你明白我在这里的意思。看照片。

我在 php 文件中调用这些输入名称,我得到 undefined variabile ...。这是我的问题。从视觉上看,输入在那里,但没有 html 代码。

调试器:

【问题讨论】:

您是否设置了断点并确保result 不是undefined?这是什么? 按@zero298 所说的做,如果返回一些东西,检查是否没有其他id 为show_panels的元素 我在succes ... resultresult ="the html code I need"之后使用了调试器; 我会用调试器上传一张照片。 请查看更新后的帖子并查看调试器照片。 【参考方案1】:

我能问一下,当您加载 jQuery 并使用它的语法时,为什么要使用传统的 javascript document.getElementById?当您将数据发送到 .ajax 时,您使用 jQuery 选择器 $("#formular_comanda").serialize()。为什么不做类似...

success: function(result) 
    $("#show_panels").html(result);
,

您的 PHP 文件 calculator/panouri-simple/calcul-panouri-simple.php 是否需要任何 GET 参数?或者 POST 中没有发送的任何内容?错误是否出现在控制台中(您使用console.log 编写),因为事情没有通过?

是你的 jQuery sn-p,你在其中调用 .ajax 语句,在一个事件处理程序中,比如

$(document).ready(function() 
    // ...
);

还是只是在源代码中?

【讨论】:

以上是关于ajax innerHTML 结果不从 PHP 返回 html 代码的主要内容,如果未能解决你的问题,请参考以下文章

php ajax依赖下拉列表不从表中加载数据

为每个 cURL 请求返​​回 AJAX 结果

如何使用 AJAX 在 innerHTML 中调用 PHP 值

通过 AJAX/innerHTML 显示部分 Unicode 编码的数据

使用 AJAX 并设置 innerHTML 的安全性?

PDO 不从 mysql 查询返回结果