Php 我在textfield上输入一些数据后使用ajax显示输出,它没有显示正确的输出吗?
这里是html程序。。。在这里,我使用ajax在textfield上输入一些数据后显示输出,当food=''时,它只给出第一个响应,之后它不会显示我们没有的另一个响应。或者我们确实有Php 我在textfield上输入一些数据后使用ajax显示输出,它没有显示正确的输出吗?,php,ajax,Php,Ajax,这里是html程序。。。在这里,我使用ajax在textfield上输入一些数据后显示输出,当food=''时,它只给出第一个响应,之后它不会显示我们没有的另一个响应。或者我们确实有 <!DOCTYPE> <html> <head> <script type="text/javascript" src="foodstore.js"></script> </head> <body onload="process(
<!DOCTYPE>
<html>
<head>
<script type="text/javascript" src="foodstore.js"></script>
</head>
<body onload="process()">
<h1>choose your favorite food</h1>
<input type="text" id="inputuser">
<div id="usererror"></div>
</body>
</html>
选择你最喜欢的食物
这里是foodstore.php
<?php
header('Content-Type: text/xml');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<response>';
$food=$_GET['food'];
$foodArray=array('shahi paneer','matar paneer','matar alu','raita');
if(in_array($food,$foodArray))
{
echo 'we do have '.$food.'!';
}
elseif($food=='')
{
echo 'please enter any dish';
}
else
{
echo 'we dont have '.$food.'!';
}
echo '</response>';
?>
<?php
$food=$_GET['food'];
$foodArray=array('shahi paneer','matar paneer','matar alu','raita');
if(in_array($food,$foodArray)) {
echo 'we do have '.$food.'!';
}
elseif($food=='') {
echo 'please enter any dish';
} else {
echo 'we dont have '.$food.'!';
}
?>
这里是foodstore.js
var xmlHttp=createXmlHttpRequestObject();
function createXmlHttpRequestObject()
{
var xmlHttp;
if (window.XMLHttpRequest)
{
xmlHttp=new XMLHttpRequest();
}
else
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if(!xmlHttp)
alert("cant create that object");
else
return xmlHttp;
}
function process()
{
if (xmlHttp.readyState==0 ||xmlHttp.readystate==4)
{
dish=encodeURIComponent(document.getElementById("inputuser").value);
xmlHttp.open("GET","foodstore.php?food="+dish, true);
xmlHttp.onreadystatechange=handleServerResponse;
xmlHttp.send(null);
}
else{
setTimeout('process()',1000);
}
}
function handleServerResponse(){
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
xmlResponse=xmlHttp.responseXML;
xmlDocumentElement=xmlResponse.documentElement;
message=xmlDocumentElement.firstChild.data;
document.getElementById("usererror").innerHTML='<span style ="color:red">'+message+'</span>';
setTimeout('process()',1000);
}
else
{
alert('something went wrong');
}
}
}
var xmlHttp=createXmlHttpRequestObject();
函数createXmlHttpRequestObject()
{
var-xmlHttp;
if(window.XMLHttpRequest)
{
xmlHttp=新的XMLHttpRequest();
}
其他的
{
xmlHttp=新的ActiveXObject(“Microsoft.xmlHttp”);
}
如果(!xmlHttp)
警报(“无法创建该对象”);
其他的
返回xmlHttp;
}
函数过程()
{
if(xmlHttp.readyState==0 | | xmlHttp.readyState==4)
{
dish=encodeURIComponent(document.getElementById(“inputuser”).value);
open(“GET”,“foodstore.php?food=“+dish,true”);
onreadystatechange=handleServerResponse;
xmlHttp.send(空);
}
否则{
setTimeout('process()',1000);
}
}
函数handleServerResponse(){
if(xmlHttp.readyState==4){
if(xmlHttp.status==200){
xmlResponse=xmlHttp.responseXML;
xmlDocumentElement=xmlResponse.documentElement;
message=xmlDocumentElement.firstChild.data;
document.getElementById(“usererror”).innerHTML=''+消息+'';
setTimeout('process()',1000);
}
其他的
{
警惕(“出了什么事”);
}
}
}
方法应该是
or
$(document).on(“keyup”、“#inputuser”,function()){
var dish=$(this.val();
$.ajax({
键入:“获取”,
url:'foodstore.php',
数据:{食物:盘子},
成功:功能(数据){警报(数据);
$('#usererror').html(数据);
}
});
});
选择你最喜欢的食物
foodstore.php
<?php
header('Content-Type: text/xml');
echo '<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>';
echo '<response>';
$food=$_GET['food'];
$foodArray=array('shahi paneer','matar paneer','matar alu','raita');
if(in_array($food,$foodArray))
{
echo 'we do have '.$food.'!';
}
elseif($food=='')
{
echo 'please enter any dish';
}
else
{
echo 'we dont have '.$food.'!';
}
echo '</response>';
?>
<?php
$food=$_GET['food'];
$foodArray=array('shahi paneer','matar paneer','matar alu','raita');
if(in_array($food,$foodArray)) {
echo 'we do have '.$food.'!';
}
elseif($food=='') {
echo 'please enter any dish';
} else {
echo 'we dont have '.$food.'!';
}
?>
在
onBlur
上更改您的onload
,并从onload中删除并放入输入中:
<input type="text" id="inputuser" onblur="process()">
array('shahi paneer'、'matar paneer'、'matar alu'、'raita')感觉饥饿:)