2013-04-16 114 views
0

我想弄清楚如何在jQuery Mobile中使用JSON檢索簡單的html內容。從json使用jQuery Mobile獲取內容

這裏是我迄今所做的:

matchinfo.php:

$str = '<h2>This is a test</h2><p>What is going on here?</p>'; 

echo $_GET['callback'] . '(' .json_encode($str). ')'; 

這裏是我嘗試接受她:

$(document).on('pageshow', function(){ 

    $.mobile.loading('show'); 
    $.getJSON("http://mypage.com/matchinfo.php", function (result){ 
     $("#pageName").html(result.html); 
    }); 

    $('#pageName').content('refresh'); 
    $.mobile.loading('hide'); 

}); 

的微調只是不斷加載!我可以用listview做到這一點,但在這裏我只想獲得一些內容!?

任何幫助表示讚賞,並在此先感謝:-)

+0

您的代碼正在尋找名爲'html'的鍵,但您的數據只是一個扁平的字符串。 'json_encode(array('html'=> $ str));' – DaveRandom

+0

你不應該在url中有'?callback = someCallback'? –

+0

@DaveRandom - 完美...沒有看到:-)謝謝... – Mansa

回答

1

你不是輸出JSON,你輸出JSONP。你可能不應該使用getJSON,JSONp不應該使用XMLHTTPRequest(AJAX)。

getJSON簡寫爲:

$.ajax({ 
    dataType: "json", 
    url: url, 
    data: data, 
    success: success 
}); 

http://api.jquery.com/jQuery.getJSON/

1

您可以使用jQuery $.get代替$.getJSON

$.get('http://mypage.com/matchinfo.php', function(result) { 
    $('#pageName').html(result); 
}); 

還要注意的是,在.html()功能,您只需要通過result代替result.html