2013-10-28 34 views
0

我返回一個PHP數組返回到一個JQuery調用,以追加到名爲「name-data」的div中。我想我的數組被垂直列出,所以我在PHP中連接了一個br標籤,但是當它到達HTML頁面時,br並沒有被渲染,它只是作爲文本出現。我嘗試了各種形式的br,但都沒有運氣。爲什麼我的<br>不工作?

我是新來的JQuery - 我做錯了什麼?非常感謝 !

PHP:

$result = mysqli_query($con,"SELECT FirstName FROM customer limit 5"); 
while($row = mysqli_fetch_array($result)) 
{ 
echo $row['FirstName']."<br />"; 
} 

JQuery的:

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

HTML

Name:<input type="text" id="name"> 
<input type="submit" id="name-submit" value="grab"> 
<div id="name-data"> </div> 

回答

5

嘗試用.html()更換.text()

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

另外,對於克蘇魯的愛情,parameterize your MySQL query。這是一個SQL注入等待發生。

+0

很多感謝!這不是生產。我正在學習JQuery,不過你的建議很好用! – Vince

+0

無論如何,這是一個很好的習慣。快樂編碼:) –

3

變化:

$('div#name-data').text(data); 

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

閱讀.text().html()

0

另外,如果<br>是div中的最後一個東西,大多數瀏覽器實際上不會實現中斷。你需要一些東西后,像這樣:<br>&nbsp;

+1

不,這不是原因。 OP使用僅設置文本的.text(),它不*插入HTML。 – ComFreek

+0

因此單詞「也」。即使OP使用'.html()'而不是'.text()',這在大多數瀏覽器中都是另一個可能的問題。 –