2015-10-14 26 views
0

我想提出一個Ajax請求,我會在輸入框中鍵入名稱搜索從數據庫中的數據,它的正常工作,jQuery的AJAX回調要求把HTML代碼PHP文件

<script> 

    $(document).ready(function(){ 
    $('input#name-submit').on('click', function() { 

    var nameVar = $('input#name').val();   
    if($.trim(nameVar) != ''){ 
     $.post('records.php', {name: nameVar}, function(data){ 
     $('div#name-data').text(data); 
});  
    }  
}); 
}); 

</script> 

----php 

if(isset($_POST['name'])){  
$name = $_POST['name'];  
echo $name; 

現在的問題是,當我將html嵌入到php並回顯它,它打印html也

echo "<div class='tblDiv'>"; 
echo "</div>"; 

result: <div class='tblDiv'> Name </div> 

如何避免這種情況並獲得樣式結果?

+0

你有什麼是從行爲AJAX - 尤其是jQuery,在php腳本中打印的任何內容(**包括html **)都將被解析並由AJAX返回。爲了只獲得某些數據,將你的php腳本分成部分,樣式,html等。 –

+0

我得到了那個謝謝你的朋友 –

回答

4

您需要使用.html()代替.text()

$('#name-data').html(data); 

.text()不會解析html內容,它會逃跑的html並打印傳入的值,因爲它是

+0

或'.append()',對不對? –

+0

@JeroenBellemans取決於函數應該如何反應,如果再次調用 –