中易网

php单选按钮问题

答案:3  悬赏:80  
解决时间 2021-11-26 08:05
这种效果如何做呀
我知道用<input type="radio"> ,我想要上面的那种效果,当我选择网银时,出来上面的两个框,下面的两个框隐藏;当我选择学习卡时,出来下面的那个框,上面的两个框隐藏,是这个的效果,你没有明白我的意思



最佳答案
用ajax:
test.php代码:
<?php
header("Content-Type: text/xml;charset=GB2312");//处理发送给ajax的中文信息不会出现乱码
$md = $_GET["md"];
$sInfo = "";
if ($md == "xuexika")
{
$sInfo = "请输入卡号:<input type=\"text\" name=\"kahao\"></input><br />
请输入密码:<input type=\"text\" name=\"mima\"></input>";
}
else if ($md == "wangyin")
{
$sInfo = "请选择充值方式: 
<select name=\"bizhong\">
<option value=\"renminbi\" >人民币</option>
<option value=\"meiyuan\">美元</option>
</select><br />
请选择充值金额:
<input type=\"text\" name=\"jinge\"></input>";
}
echo $sInfo;
?>
test.html代码:
<script type="text/javascript">
function requestInfo()
{
var mdall = document.getElementsByName("chace");
var md = "";
for(var i=0; i<mdall.length; i++)
{
if(mdall[i].checked){
md=mdall[i].value;
}
}

var oXmlHttp = createXMLHttp();
oXmlHttp.open("get", "test.php?md="+md, true);
oXmlHttp.onreadystatechange = function () {
if (oXmlHttp.readyState == 4) {
if (oXmlHttp.status == 200) {
displayInfo(oXmlHttp.responseText);
} else {
displayInfo("An error occurred: " + oXmlHttp.statusText);
}
}
}
oXmlHttp.send(null);
}

function createXMLHttp()
{
if (typeof XMLHttpRequest != "undefined")
{
return new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
var aVersions = [ "MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp"];
for (var i = 0; i < aVersions.length; i++)
{
try
{
var oXmlHttp = new ActiveXObject(aVersions[i]);
return oXmlHttp;
}
catch (oError)
{
//Do nothing
}
}
}
throw new Error("XMLHttp object could not be created.");
}

function displayInfo(sText)
{
var divInfo = document.getElementById("divInfo");
divInfo.innerHTML = sText;
}
</script>

支付方式:
<input type="radio" id="chace" name="chace" value="wangyin" onclick="requestInfo()">网银</input>
<input type="radio" id="chace" name="chace" value="xuexika" onclick="requestInfo()" >学习卡</input>
<div id="divInfo"></div>

你运行test.htm就可以实现你需要的功能。
全部回答
这个实现的原理很简单,其实是通过一个表单,操作get参数,通过获取不同的get参数,来调节    sql查询语句的行为,具体的代码如下: // 假设共有3种搜索类别:0)全局搜索 1)标题搜索 2)关键字搜索 // 表单代码设置为get模式提交,因为是演示,所以我只把关键代码写出来 '    全局搜索    标题搜索    关键字搜索 '; // $_get['searchtype'] == 0 | 全局搜索 // $_get['searchtype'] == 1 | 标题搜索 // $_get['searchtype'] == 2 | 关键字搜索 // 通过switch语句去筛选sql语句行为,当然因为是get模式所以需要注意容错处理,防止恶意用户进行sql注入,我这里就不写具体的容错方法了,只是教你原理 switch ($_get['searchtype']) {     case '0':         $sql = "select `字段` from `表名` where `标题字段` like '%搜索的内容%' or `关键字字段` like '%搜索的内容%' or `内容字段` like '%搜索的内容%';";        break;     case '1':        $sql = "select `字段` from `表名` where `标题字段` like '%搜索的内容%';";        break;     case '2':        $sql = "select `字段` from `表名` where `关键字字段` like '%搜索的内容%'";        break;     default: // 属于非法操作,按全局执行         $sql = "select `字段` from `表名` where `标题字段` like '%搜索的内容%' or `关键字字段` like '%搜索的内容%' or `内容字段` like '%搜索的内容%';"; } // 因此根据用户选择的不同,sql查询的行为结果,也就不一样如果还有问题,欢迎追问~
index.php 提交到 do.php do.php 页判断 //假定 1=平邮 2=快递 3=EMS 4=同城快递 <?php switch ($_POST['od[freight]']) { case 1: echo "平邮"; break; case 2: echo "快递"; break; case 3: echo "EMS"; break; case 4: echo "同城快递"; } ?>
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
有一首歌歌词是让时间去等待,歌名是什么?
冯六郎的意思是什么啊?请解释下!
为什么这几天上空总出现响声
马调的意思是什么啊?请解释下!
已知孔板前后压差和管径,怎么算孔板直径
什么是社会保险税的累退性
硅胶法藤能不能打结啊?
相马的意思是什么啊?请解释下!
谁有煤矿采区设计图资料
盛鑫卫浴商店地址在什么地方,想过去办事
iPhone苹果手机QQ如何升级到最新版本
绅士台球地址在什么地方,我要处理点事
英语运算到底是用is还是are
把商标许可别人和授权别人使用有什么不同的吗
忆酒垆的意思是什么啊?请解释下!
推荐资讯
轩辕黄帝故里特点
御沟流叶的意思是什么啊?请解释下!
剑网3玩人妖会不会被歧视
世上无难事的意思是什么啊?请解释下!
闲吟客的意思是什么啊?请解释下!
女人到底要不要在家里待
哈尔滨肯德基储备经理面试
2015年下半年新疆教师资格证考试座位表什么时
宝塔诗的意思是什么啊?请解释下!
女孩子什么情况下会湿
新秀社区居委会地址在什么地方,想过去办事
穿越火线里为什么我一按F6就会出现视频录制啊
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?