簡體   English   中英

在HTML中使用返回的JSON編碼的AJAX PHP響應 <div> 作為價值?

[英]Using returned JSON encoded AJAX PHP response within HTML <div> as values?

我已經通過許多類似的問題四處尋找,但似乎沒有一個適合我。 它們要么不相關,要么極其復雜-我是javascript新手。

我所擁有的是一個AJAX表單,該表單需要一些輸入,然后將其發布到form.php中,在其中進行JSON_encoded並作為響應回顯回AJAX調用。

<?php
... calculations
..
.
echo json_encode(array("monthly_saved" => $monthly_saved, "peak" => $peak)); 
?>

這已成功處理;

POST form.php 200 OK 41毫秒
HeadersPostResponseHTML

6018066.666666666667200{"monthly_saved":6.6666666666667,"peak":"10"}

盡管現在我需要利用這些值,並在HTML內部將它們用作內容!

救命!

我的AJAX功能:

$(function () {
        $('#quote_form').on('submit', function (e) {
        e.preventDefault();
        $.ajax({
            type: "POST",
            url: "form.php",
            data: $('#quote_form').serialize(),
            dataType: "json",
            cache: false,
            success: function(data)
            {
                *WHAT I NEED TO FIGURE OUT*
            }
          });
        });
});

我已經嘗試了數小時的解決方案,但似乎無法弄清楚!

我當時正在考慮在成功功能中加入以下兩者之間的混合點:

document.getElementById(“ graph_var_1”)。innerHTML =“(data.monthly_saved”;

$( “#graph_var_1”)HTML(data.monthly_saved);

什么會起作用?

我需要用這些變量填充的HTML是:

<div class="result_field"><div id="graph_var_1"></div> (saved <div id="graph_var_2"></div>%)</div>

首先,這是:

6018066.666666666667200{"monthly_saved":6.6666666666667,"peak":"10"}

是無效的JSON,您之前必須回顯數字6018066.666666666667200 ,因此應刪除它。

現在,響應將作為data進入success回調。 如果要訪問響應的特定部分,可以執行以下操作:

alert(data.monthly_saved);

這應該提醒6018066.666666666667200

您應該可以使用$("#graph_var_1").html(data.monthly_saved); 因為您已經完成了填充DOM元素的准備

暫無
暫無

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

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