簡體   English   中英

PHP結果未以HTML顯示

[英]PHP results not displaying in HTML

我已經閱讀了多篇文章,但對我沒有任何幫助,因此如果有人可以提供幫助,我將不勝感激。 我正在嘗試將Full_Name字段顯示為網頁上的HTML元素。

PHP文件如下:

{"Test_Info": {
    "Company_Info": {
        "Company_ID": "2",
        "Company": "Test Company",
        "Full_Name": "Test User"
    }}

我在HTML代碼的主體中使用以下代碼:

<body id="startscreenBG">

       <div class="hello"> </div>

</body>
        <script>
                    $.ajax({
                    type:'GET',
                    url:'jsondata.php',
                    data:'json',
                    success: function(data){
                            var newhtml = ''; 
                            $.each(data, function(i, item) {
                                    newhtml +='<div>'+ item.Full_Name +'</div>'; 
                            });
                            $('.hello').html(newhtml); 
                            }})
         </script>
</html>

這不是您面臨的HTML問題,而是數據循環問題。 打開控制台(F12),並確保XHR請求實際上返回了您期望的結果。 然后寫: debugger; 在行上方: var newhtml =''; 並檢查數據變量的內容。

然后確保您的循環功能按預期工作:

$.each(data, function(i, item) {
    debugger; 
});

您將認識到“ item”變量不包含具有“ Full_Name”屬性的預期對象。

基本上,當您遇到問題時,解決問題的方法是逐步調試代碼,並確保每個函數都按預期執行,並且每個變量都具有預期的內容。

之所以最終出現這種情況,是因為您使用的是模糊的名稱,例如:“數據”。 您的內容實際上包含“ unparsedCompanyCollection”。 我建議您也習慣於精確的變量名,這將長期幫助您進行調試,並且通常使用干凈的代碼。

只是一個猜測,但是您可能返回的是Json數據字符串,而不是實際的json數據。 通常,您只需在輸出內容標頭中添加內容標頭即可對其進行修復。

在您的使JSON添加的PHP文件中

header('Content-Type: application/json');

在輸出數據之前。

success callback您可以進行一些調試以查看

  ...
  success: function(data){
      console.log( data );  // Or even just alert(data); if it's a string then you know.
      ...
   }

解決它的另一種方法是使用JSON.parse( data )

您應該將data:'json'更改為dataType:'json' 另外,您正在嘗試輸出item.Full_Name 這應該是item.Company_Info.Full_Name 您的ajax調用應為:

$.ajax({
    type:'GET',
    url:'jsondata.php',
    dataType:'json',
    success: function(data){
        var newhtml = ''; 
        $.each(data, function(i, item) {
            newhtml +='<div>'+ item.Company_Info.Full_Name +'</div>'; 
        });
        $('.hello').html(newhtml); 
    }
});

而且,您應該更正PHP以容納有效的JSON對象(請注意,問題中發布的代碼中缺少結尾}

{"Test_Info": {
    "Company_Info": {
        "Company_ID": "2",
        "Company": "Test Company",
        "Full_Name": "Test User"
    }
}}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM