当我使用jquery ajax从数据库中获取数据时,响应文本也包含html代码。到目前为止我的代码是:
$("#onclick").click(function() {
$.ajax({
async:"true",
type:"POST",
url:"process.php",
dataType: "text",
data:"tempid="+tid,
success:function(dat) {
$("#templ").html(dat);
}
});
});
文件process.php
仅包含以下代码
include "connect.php";
if(isset($_POST['tempid'])&& $_POST['tempid']>0)
{
$temp_id= $_POST['tempid'];
$sql="SELECT template FROM templates WHERE tid='".$temp_id."'";
$res= mysql_query($sql);
if((mysql_num_rows($res))>0)
{
While($row = mysql_fetch_array($res))
echo '<b>'.$row['template'].'</b>';
}
else
{
echo 'NOT';
}
}
我得到的结果是:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<body>
</body>
</html>
<b>/* The mysql value */</b>
我的代码有错吗?我想在我的文本框中仅显示id为templ
的mysql值。如何避免所有的HTML代码响应?如果需要进一步的细节,请告诉我..
答案 0 :(得分:0)
只需将ob_clean();
放入process.php中回复之前它就能解决你的问题,但我完全赞同昆汀的观点