я могу установить ajax responseText равным строке?

У меня есть проблема с ajax.responseText в условиях, когда он должен быть равен строке, которая передается из php echo из внешнего файла,
дело в том, что строка кажется не равной ajax.responseText,

но если предупреждение (ajax.responseText), это в точности строка «friend_request_sent»

function friendToggle(type,user,elem){
var conf = confirm("Press OK to confirm the '"+type+"' action for user <?php echo $u; ?>.");

if(conf != true){
return false;
}
_(elem).innerHTML = 'please wait ...';
var ajax = ajaxObj("POST", "friend_system.php");

ajax.onreadystatechange = function() {
if(ajaxReturn(ajax) == true) {

if(ajax.responseText=="friend_request_sent"){
_(elem).innerHTML = 'OK Friend Request Sent';
} else if(ajax.responseText == "unfriend_ok"){
_(elem).innerHTML = '<button onclick="friendToggle(\'friend\',\'<?php echo $u; ?>\',\'friendBtn\')">Request As Friend</button>';
} else{
alert(ajax.responseText);
_(elem).innerHTML = 'Try again later';
}
}
}
ajax.send("type="+type+"&user="+user);

}

теперь код, который я получаю из friend_system.php

 ...{
echo"friend_request_sent";
exit();
}

и код AJAX JS

function ajaxObj( meth, url ) {
var x = new XMLHttpRequest();
x.open( meth, url, true );
x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
return x;
}
function ajaxReturn(x){
if(x.readyState == 4 && x.status == 200){
return true;
}

}
третье условие — где оно борется, оно всегда уходит в другое, почему?

-3

Решение

Чтобы проверить ответ ajax на любую строку, лучше обрезать текст ответа

request.responseText.trim() === "string"
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]