Итак, в общем, я пытаюсь отключить кнопку отправки на основе вызова ajax, который проверяет мою базу данных на наличие данных за определенную дату.
В настоящее время у меня все вышеперечисленное работает, но я сталкиваюсь с последним препятствием в фактическом отключении кнопки отправки. На presnt у меня есть ответ на мой вызов ajax, отображаемый в виде текста в div на моей странице, и я могу, изменив код ниже, отключить кнопку, если ответ не совпадает с проверенным моим кодом, но не может заставить его работать правильно быть совпадающим (или нет ответа). Я предполагаю, что моя проблема в том, что я проверяю и каков реальный ответ от вызова ajax, разные. Любая помощь будет высоко ценится.
Моя страница, которая делает вызов ajax
<script type="text/javascript">
function showHint(str)
{
if (str.length==0)
{
document.getElementById("txtHint").innerHTML="";
document.getElementById("txtHint").style.border="0px";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
document.getElementById("txtHint").style.border="1px solid #A5ACB2";
if (xmlhttp.responseText == 'WARNING!! - PREVIOUS RECORDS FOUND') document.getElementById('FRINSUB').disabled = true;
else
document.getElementById('FRINSUB').disabled = false;
}
}
xmlhttp.open("GET","checkdate.php?q="+str,true);
xmlhttp.send();
}
</script>
Мой очень простой код Ajax
<?php
$cdrf=trim($_GET["q"]);
list($d, $m, $y) = explode('/', $cdrf);
$mk=mktime(0, 0, 0, $m, $d, $y);
$cdrfq=strftime('%Y-%m-%d',$mk);
$q=mysql_real_escape_string($cdrfq);
$isdate = false;
$con = mysql_connect("server","username","password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("jbsrint", $con);
$query = "SELECT * FROM fuelrecords WHERE FR_WE='$q'";
$res = mysql_query($query);
if(mysql_num_rows($res) > 0){
$response = "WARNING!! - PREVIOUS RECORDS FOUND";
}else{
$response = "NO RECORD FOUND";
}
echo $response;
?>