亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

AJAX 請求未以正確的 <divs> 從服務器返回項目

AJAX 請求未以正確的 <divs> 從服務器返回項目

PHP
DIEA 2022-10-28 16:27:07
當用戶單擊圖像時,我有一個疊加層出現在屏幕上。單擊圖像時,將執行一個 post ajax 請求,它應該返回結果moduleID,moduleName并返回pageID到<div id="result">,它也應該返回content到<div id="content">但是我什么都沒有得到?模塊.php:<div class="grid-2 dashboardIcons module">    <h3 class="fontAmaticH1">Critical Writing</h3>        <a class="cursor module" onclick="toggleWindow(); getModuleData(4)"><img value="4" src="images/CriticalWriting.png">        </a></div><div id="result"> <!-- Should be returning data from db here --></div><div id="content"> <!-- and here --></div>模塊測試AJAX.php:<?phprequire 'scripts/db.php';$moduleID = $_POST['moduleID'];$pageID = 1;if(isset($_POST['moduleID'])){    //$stmt = $conn->prepare ("SELECT * FROM `module` WHERE moduleID = ?");    $stmt = $conn->prepare ("SELECT `module`.`moduleID`, `module`.`moduleName`,`moduleContent`.`pageID`, `moduleContent`.`content` FROM `moduleContent` INNER JOIN `module` ON `module`.`moduleID` = `moduleContent`.`moduleID` WHERE `moduleContent`.`pageID` = ? AND `moduleContent`.`moduleID` = ? ");        $stmt->bind_param("ii", $pageID, $moduleID);    $stmt->execute();    $result = $stmt->get_result();    $output = [];    while($row = $result -> fetch_assoc()) {        $output["result"] = $row['moduleID'].' '.$row['moduleName'].' '.$row['pageID'];        $output["content"] = $row['content'];    }    echo json_encode($output);} ?></div> 腳本.js:// When user clicks open a module, pass the moduleID through in an ajax request to get data from the dbfunction getModuleData(moduleID){  console.log(moduleID);  $.ajax({        url: "moduleTestingAJAX.php",        method: "post",         data: {moduleID:moduleID},      success: function(data){              console.log(data);            $('#result').html(data.result);                $('#content').html(data.content);          }    });  console.log("test");}桌子上放著什么moduleContentconsole.log(data);在ajax 調用中運行后,我得到了這個返回:
查看完整描述

1 回答

?
汪汪一只貓

TA貢獻1898條經驗 獲得超8個贊

您沒有解析收到的 JSON。當您的 PHP 腳本回顯時json_encode($output),您將獲得一個 JSON 編碼的字符串,然后您嘗試將其用作對象。


dataType有兩個選項,或者通過添加屬性告訴您的 AJAX 請求您期望 JSON :


$.ajax({  

      url: "moduleTestingAJAX.php",  

      method: "post",   

      data: {moduleID:moduleID},

      dataType: 'json', // <-- this line added

      success: function(data){

            $('#result').html(data.result);    

            $('#content').html(data.content);    

      }  

});

或者,您可以在成功函數中手動解析 JSON:


success: function(data){

    parsedData = JSON.parse(data);

    $('#result').html(parsedData.result);    

    $('#content').html(parsedData.content);    

}

我建議第一個選項。


查看完整回答
反對 回復 2022-10-28
  • 1 回答
  • 0 關注
  • 164 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號