时间:2021-07-01 10:21:17 帮助过:9人阅读
来源:http://www.ido321.com/1138.html
接到了老师的一个作业,实现的布局如图:
如果输入了科室ID,科室名字只显示与ID对应的,若没有输入,则显示全部,然后根据I科室名字的值,在所属大科中的文本框自动显示科室名字所在的大科。例如:选择了心血管内科,则在所属大科显示内科。
主要代码如下:
根据ID请求科室
function showHint(str) { var xmlhttp; if (window.XMLHttpRequest) {// IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// IE6, IE5 xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() { if (xmlhttp.readyState==4 && xmlhttp.status==200) { document.getElementById("txtHint").innerHTML=xmlhttp.responseText; } } xmlhttp.open("GET","keshi.php?q="+str,true); xmlhttp.send(); }
keshi.php:
/*防止恶意调用*/ define("TEST",'test'); // 引入文件 include_once 'mysql.func.php'; // 数据库初始化 connectMySQL(); selectDB(); setZiFuJi(); //获得来自 URL 的 q 参数 $q=$_GET["q"]; //如果 q 是数字或者数字字符串 if (is_numeric($q)) { $q = intval($q); $hint=""; $resultDKQ = queryDB("select name from table_dake where id=$q"); $hint = '科室名字:; while (!!$rowDKQ = fetchAssoc($resultDKQ)) { $hint .= ''; } } // 不是数字 else { $resultDK = queryDB("select table_dake.name from table_dake"); $hint = '科室名字:; while (!!$rowDK = fetchAssoc($resultDK)) { $hint .= ''; } } $response=$hint; //输出响应 echo $response; ?>
效果:
未输入ID如上图,输入ID在下图:
下一篇:百家搜索:在网站中添加Google、百度等搜索引擎
在S端直接ECHO '字符串';或 EXIT(json_encode(数组));就行了,
每次请求是没问题的,但是每次请求肯定会有延时。异步的问题只是会有延时,不会存在接收不到返回值的问题,收不到返回值肯定是你哪里写错了。
同时你这个情况我的比较建议一次就把数据都请求过来,存在客户端这边,然后根据需要显示就可以了。
希望对你有帮助!
http://www.bkjia.com/PHPjc/905905.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/905905.htmlTechArticleAjax异步请求PHP数据,ajax异步php 来源:http://www.ido321.com/1138.html 接到了老师的一个作业,实现的布局如图: 如果输入了科室ID,科室名字只...