我有一个小项目,其中有不同的新闻。我必须将此 news_all.php 文件包含在仪表板.php 文件的表数据中。我有预定义的根结构,其中我无法使用 include('news.php) 并且我不想使用它。因此,在这种情况下,我如何能够在dashboard.php文件中的表数据中调用news.php文件。我使用了Ajax方法。我几乎完成了,但我的代码中出现了小错误。任何帮助。谢谢。 这是我的代码:
仪表板.php
<?php
// -- REGISTER ERSTELLEN -------------------------------------------------------
$page['register-news'] = array(
1 => array( 'News','aktiv',$page['script'],'',''),
);
$page['edit-register-news'] = array(
1 => array( 'Edit-News','aktiv',$page['script'],'',''),
);
$page['content'] .= '
<table width="538" cellspacing="0" cellpadding="0" border="0" >
<tr>
<td id="News">
<div>'.CreateRegister($page['register-news']).'</div>
'.CreateMessage().'
<div class="cont-liste-verlauf register">
</div>
</td>
</tr>
</table>';
?>
news_all.php
<?php
include 'constant/const_system.inc.php';
include 'functions/ad_json.inc';
include 'functions/ad_formulare.inc';
$html =
'<table width="538" cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<a href="news.php?id=" class="TrackNews" id="01">
<div class="welcome-rahmen lng toggleNews" id="news_269_kurz">
<p class="welcome-breadcrump">Montag, 19.05.2014</p>
<p class="welcome-subheadline">Teilnahme von MAN Top Used an der Samoter 2014</p>
<div class="newsText">
<p class="welcome-text"><img src="http://intern.autodo.de/admin/news/man-it.jpg" width="165" class="text_fixed" border="0"></p>
<p class="welcome-text">Die 29. Internationale Erd- und Bautechnik-Ausstellung Samoter fand zwischen dem 8. und 11. Mai in Verona statt und zog rund 100.000 Besucher an. Samoter ist die wichtigste italienische Messe ihrer Art, die den Themen Erdbewegung, Hochbau und Baumaschinen gewidmet ist. Zugleich ist diese Veranstaltung damit auch f? europ?chen Markt bedeutsam.</p>
</div>
</div>
</a>
<a href="news.php?id=" class="TrackNews" id="02">
<div class="welcome-rahmen lng toggleNews" id="news_264_kurz">
<p class="welcome-breadcrump">Freitag, 24.01.2014</p>
<p class="welcome-subheadline">Kaufvertrag: neue Porsche-Vorlage zum Drucken!</p>
<div class="newsText">
<img src="http://intern.autodo.de/admin/news/porsche-kaufvertrag.jpg" border="0" align="right" class="img_fixed" width=60><p class="welcome-text">Ihr AMO Druckcenter bietet Ihnen ab sofort die M?chkeit, Kaufvertr? im Porsche-Design zu nutzen.</p>
<p class="page-breadcrump">AutoDo!-Team</p>
</div>
</div>
</a>
</td>
</tr>
</table>';
$return = array(
'status' => 1,
'html' => $html
);
echo(json_encode($return)) ;
?>
ajax.js
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script>
$.ajax({
type: "POST",
url: "news_all.php",
dataType : 'json',
cache: false,
data: {},
success: function(data){
$('#news').html(data.html);
}
});
</script>
最佳答案
您已经快到了,自从您使用 data.html
以来,有两件主要事情
dataType : 'json'
(在 AJAX 调用中)- 这会告诉您的 AJAX 函数将接收到的数据视为 JSON 对象,从而允许您使用
data.html
(查看更多 jQuery.ajax() documentation )
- 这会告诉您的 AJAX 函数将接收到的数据视为 JSON 对象,从而允许您使用
echo(json_encode($return))
(在 news_all.php 输出中)- 这会以 JSON 兼容格式提供输出
下面是我的示例代码
仪表板.php
<table width="538" cellspacing="0" cellpadding="0" border="0" >
<tr>
<td id="news">
<div>'.CreateRegister($page['register-news']).'</div>
'.CreateMessage().'
<div class="cont-liste-verlauf register">
</div>
</td>
</tr>
</table>
<script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
<script>
$.ajax({
type: "POST",
url: "news_all.php",
dataType : 'json',
cache: false,
data: {},
success: function(data){
$('#news').html(data.html);
}
});
</script>
news_all.php
<?php
$html =' <table width="538" cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<a href="news.php?id=" class="TrackNews" id="01">
<div class="welcome-rahmen lng toggleNews" id="news_269_kurz">
<p class="welcome-breadcrump">Montag, 19.05.2014</p>
<p class="welcome-subheadline">Teilnahme von MAN Top Used an der Samoter 2014</p>
<div class="newsText">
<p class="welcome-text"><img src="http://intern.autodo.de/admin/news/man-it.jpg" width="165" class="text_fixed" border="0"></p>
<p class="welcome-text">Die 29. Internationale Erd- und Bautechnik-Ausstellung Samoter fand zwischen dem 8. und 11. Mai in Verona statt und zog rund 100.000 Besucher an. Samoter ist die wichtigste italienische Messe ihrer Art, die den Themen Erdbewegung, Hochbau und Baumaschinen gewidmet ist. Zugleich ist diese Veranstaltung damit auch f? europ?chen Markt bedeutsam.</p>
</div>
</div>
</a>
<a href="news.php?id=" class="TrackNews" id="02">
<div class="welcome-rahmen lng toggleNews" id="news_264_kurz">
<p class="welcome-breadcrump">Freitag, 24.01.2014</p>
<p class="welcome-subheadline">Kaufvertrag: neue Porsche-Vorlage zum Drucken!</p>
<div class="newsText">
<img src="http://intern.autodo.de/admin/news/porsche-kaufvertrag.jpg" border="0" align="right" class="img_fixed" width=60><p class="welcome-text">Ihr AMO Druckcenter bietet Ihnen ab sofort die M?chkeit, Kaufvertr? im Porsche-Design zu nutzen.</p>
<p class="page-breadcrump">AutoDo!-Team</p>
</div>
</div>
</a>
<a href="news.php?id=" class="TrackNews" id="03">
<div class="welcome-rahmen lng toggleNews" id="news_265_kurz">
<p class="welcome-breadcrump">Mittwoch, 15.01.2014</p>
<p class="welcome-subheadline">AutoDo! Update: Die Eigenschaft -Unfallfahrzeug- wurde im AMO erweitert!</p>
<div class="newsText">
<p class="welcome-text">Ab sofort k?n Sie Fahrzeuge nach folgenden Kriterien kennzeichnen:</p>
<p class="highlight"><b>? Unfallfahrzeug<br>
? Unfallfrei<br>
? Keine Angabe</b></p>
<p class="page-breadcrump">AutoDo!-Team</p>
</div>
</div>
</a>
</td>
</tr>
</table>
';
$return = array(
'status' => 1,
'html' => $html
);
echo(json_encode($return)) ;
?>
关于javascript - 使用Ajax调用表数据中的php文件出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24058197/