我的$.post
不工作,因爲我試圖從我的PHP文件中提取JSON數據,我不知道它爲什麼不顯示輸出的原因? 這是我的代碼。
HTML:
<pre id="love" type="submit" data-toggle="modal" data-target="#myModal" onclick="mymodal(\''+this["id"]+'\')">'+this["love"]+' students <i class="glyphicon glyphicon-heart fa-lg" style="color:red"></i></pre >
其中this["id"]
已經傳給mymodal()
功能。
javascript代碼:
var list='';
function mymodal(id){
$.post('postname_.php',{post_id:id},function(data1){
$.each(data1.result,function(){
list+='<div class="modal fade" id="myModal" role="dialog">'+'<div class="modal-dialog">'+'<div class="modal-content">'+
'<div class="modal-header">'+'<button type="button" class="close" data-dismiss="modal">×</button>'+
'<h4 class="modal-title">Students who loved your post</h4>'+' </div>'+'<div class="modal-body">';
list+='<h4 class="text-danger">'+this["finame"]+' '+this['sename']+'</h4>';
list+='</div>'+'<div class="modal-footer">'+
'<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>'+'</div>'+
'</div>'+'</div>'+'</div>';
$('#insert').append(list);}),'json'
});
}
我的PHP代碼:
<?php
require("../vendor/library50-php-5/CS50/CS50.php");
CS50::init(__DIR__ . "/../config.json");
$result=array();
$frows3=CS50::query("SELECT * FROM userhit WHERE plove=? AND bypost=?",1,$_POST['post_id']);
foreach($frows3 as $frow3){
$frow4=CS50::query("SELECT * FROM userinfopersonal WHERE user_id=? ",$frow3['user_id']);
$frow5=CS50::query("SELECT * FROM userprof WHERE user_id=? ",$frow3['user_id']);
array_push($result,array('finame'=>$frow4[0]['firstname'],'sename'=>$frow4[0]['secondname'],'url1'=>$frow5[0]['url']));
}echo json_encode(array('result'=> $result)); ?>
其中CS50 ::查詢提供了我的一切我的錶行滿足給定的查詢,沒有關於擔心,我查這是給予完美的json文件。主要問題是alert
功能mymodal()
正在工作,這意味着在點擊預標籤它進入功能,但$.post
內部的警報不會執行。
燁這是一個錯誤,是現在警報工作正常,但仍然'list'不追加到'#insert' –
嘗試使用'$( '#插入')HTML(名單);'有關更多詳細信息,請參閱:http://api.jquery.com/Html/。 – Greenstick
仔細一看,'$ .append()'應該可以工作。此代碼運行時,DOM樹中是否存在'#insert'元素? – Greenstick