当前位置:Gxlcms > PHP教程 > jqueryAjax程序对PHP程序返回的字符串进行切分就总是出有关问题

jqueryAjax程序对PHP程序返回的字符串进行切分就总是出有关问题

时间:2021-07-01 10:21:17 帮助过:11人阅读

jquery Ajax程序对PHP程序返回的字符串进行切分就总是出问题
比如PHP程序 输出一个

echo 'yt|'.$row["dig"];

Ajax程序对其进行切分:
function Dig(id) { //当单击投一票链接时
var content = document.getElementById("dig"+id); //获取显示“投一票”的元素
//获取显示票数的元素,其id属性值为一个数字,类似id="3"
var dig = document.getElementById(id);
$.ajax({
type: "get",
url: "service.php",
data: {id:id,n:Math.random()}, //发送记录id给service.asp
beforeSend:function(){$(dig).html('');},
success: function(data){ //处理返回的数据
r=data.split("|");
alert(r[0]);
if(r[0] == "yt" ) { //已经投过票的情况
$(content).html("您已经投过票了!");
$(dig).html(r[1]); //显示原来的票数
}
else if(data == "NoData") //没有找到记录
{ alert("参数错误!"); }
else{
$(dig).html(data); //服务器修改成功,更新票数
$(content).html("投票成功"); //将投一票改成投票成功
setTimeout("rightinfo("+id+")",3000); //3秒后调用rightinfo(id)
} }}); }
就总是切分不出来,
经测试,问题在于r[0] == "yt" 返回的是false。但用alert(r[0]);输出结果是yt,但yt上面好像还有一空行。
以前用ASP程序输出就根本不存在这样的问题,以前是:
Response.Write("yt"&","&rs("Dig"))
这个问题网上也查不到,请问是什么原因啊

分享到:


------解决方案--------------------
1、确认你的php文件前面没有空行
2、如果你的文件是utf-8编码,确认无bom头
------解决方案--------------------
引用:
比如PHP程序 输出一个

echo 'yt
------解决方案--------------------
'.$row["dig"];

Ajax程序对其进行切分:
function Dig(id) { //当单击投一票链接时
var content = document.getElementById("dig"+id); //获取显示“投一票”的元素

人气教程排行