在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
来源:http://www.ido321.com/1138.html 接到了老师的一个作业。实现的布局如图: 假设输入了科室ID。科室名字仅仅显示与ID相应的,若没有输入,则显示所有。然后依据I科室名字的值,在所属大科中的文本框自己主动显示科室名字所在的大科。比如:选择了心血管内科。则在所属大科显示内科。 主要代码例如以下: 依据ID请求科室 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: <?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 = '科室名字:<select name="ksname" >'; while (!!$rowDKQ = fetchAssoc($resultDKQ)) { $hint .= '<optgroup label='.$rowDKQ['name'].'>'; $resultKSQ = queryDB("select table_dake.id,table_keshi.sid,table_keshi.name from table_dake,table_keshi where table_dake.name='{$rowDKQ['name']}' and table_keshi.sid=table_dake.id"); while(!!$rowKSQ = fetchAssoc($resultKSQ)) { $hint .= '<option style="padding-left:15px;" value ='. $rowKSQ['name'].'>'.$rowKSQ['name'].'</option>'; } $hint .= '</optgroup>'; } } // 不是数字 else { $resultDK = queryDB("select table_dake.name from table_dake"); $hint = '科室名字:<select name="ksname" >'; while (!!$rowDK = fetchAssoc($resultDK)) { $hint .= '<optgroup label='.$rowDK['name'].'>'; $resultKS = queryDB("select table_dake.id,table_keshi.sid,table_keshi.name from table_dake,table_keshi where table_dake.name='{$rowDK['name']}' and table_keshi.sid=table_dake.id"); while(!!$rowKS = fetchAssoc($resultKS)) { $hint .= '<option style="padding-left:15px;" value ='. $rowKS['name'].'>'.$rowKS['name'].'</option>'; } $hint .= '</optgroup>'; } } $response=$hint; //输出响应 echo $response; ?>
效果: 未输入ID如上图,输入ID在下图: |
2022-08-17
2022-11-06
2022-08-18
2022-07-18
2022-07-18
请发表评论