以JSON格式从PHP文件获取内容回到javascript

时间:2013-04-04 21:50:27

标签: php jquery json jquery-mobile

将请求从jQuery Mobile脚本发送到指定的PHP文件时,不会返回任何内容,也不会将任何内容附加到html文件中。这是页面的URL:

localhost / basket / newstext.html?url = http://www.basket-planet.com/ru/news/9235

newstext.html:

<head>
<script src="js/newstext.js"></script> 
</head>
<body> 
<div data-role="page" id="newstext"> 
  <div data-role="content"> 
    <div id="textcontent"></div> 
    </div> 
  </div> 
</body> 

newstext.js:

var serviceURL = "http://localhost/basket/services/"; 
$('#newstext').bind('pageshow', function(event) { 
var url = getUrlVars()["url"]; 
$.getJSON(serviceURL + 'getnewstext.php?url='+url, displayNewsText); 
}); 

function displayNewsText(data){ 
  var newstext = data.item; 
  console.log(newstext);
  $('#textcontent').text(newstext); 
  $('#textcontent').trigger('create'); 
} 

function getUrlVars(){ 
//it displays in the alert perfectly, shortening the message here 
} 

getnewstext.php:

<?php 
include_once ('simple_html_dom.php'); 
$url = $_GET['url']; 
$html = file_get_html(''.$url.''); 

$article = $html->find('div[class=newsItem]'); 
$a = str_get_html(implode("\n", (array)$article)); 
//parse the article 
header("Content-type: application/json");
echo '{"item":'. json_encode($a) .'}';
?>

我认为我的问题是我如何编码PHP脚本中的$ a变量。 $ a变量包含各种类型的html标签......如何将其附加到html文件中?

1 个答案:

答案 0 :(得分:1)

你有这条线:

$.getJSON(serviceURL + 'getnewstext.php?url='+url, displayNewsText);

将其更改为:

$.getJSON(serviceURL + 'getnewstext.php?url='+url, displayNewsText, function(response){
    $('#elem').append(response);
});

其中#elem是要将从PHP文件返回的数据追加到的元素的名称。