动态的联动菜单怎么实现

Coverboy_6 2006-08-21 03:23:41
大家好,我想问问关于下拉框选择的变动问题

或者这样,我有两个下拉框对应一张表的一个列COL_A
col_a里的值"银行转帐","月底结帐",“EMS”“空运”“UPS”“快递A”“快递B”

当我选“银行转帐”的时候,在第二个下拉框里,将COL_A除“银行转帐”剩下部分的部分值显示显示,如“EMS”“空运”
如果选“月底结帐”的时候,在第二个下拉框里显示COL_A的“EMS”“UPS”“快递A”“快递B”

用什么方法做能达到这样的效果,我本来是想取下拉框一的值赋给一个变量,然后判断变量的值再决定第二个下拉框显示哪些内容。

请教……
...全文
117 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
trz_1985 2006-08-21
  • 打赏
  • 举报
回复
一般想到的都是用javascipt来实现。当然要是会ajax的话当然也可以用它来做
我给一个我做的给你参照吧
希望对你有帮助

<script language="javascript" src="pro.js"></script>
<form name="form1" method="post" action="addpro.asp" onsubmit="return checkform();">
<table width="100%" border="0" cellspacing="3" cellpadding="0">
<tr>
<td width="17%" align="right">产品(商品)名称:</td>
<td width="83%" align="left"><input name="pro_name" type="text" id="pro_name" size="25" maxlength="25">
<span class="STYLE1">*</span>
<input type="button" name="button" value="检查产品" onClick="checkUsername();">
<div class="STYLE1" id="content"></div></td>
</tr>
<tr>
<td align="right">产品(商品)类型:</td>
<td align="left"><select name="pro_type" id="pro_type" onChange="ckjw(this.value);">
<option value="新车">新车</option>
<option value="二手车">二手车</option>
<option value="汽配及装饰用品">汽配及装饰用品</option>
</select>
<span class="STYLE1">*</span></td>
</tr>
<tr>
<td align="right">产品(商品)价位:</td>
<td align="left" id="pro_pricetd"><select name="pro_price" id="pro_price" >
<option value="10万元以下">10万元以下</option>
<option value="10-30万元">10-30万元</option>
<option value="30万元以上">30万元以上</option>
</select>
<span class="STYLE1">*</span> </td>
</tr>
<tr>
<td align="right">产品(商品)型号:</td>
<td align="left" ><input name="pro_xh" type="text" id="pro_xh"></td>
</tr>
<tr>
<td align="right">产品介绍:</td>
<td align="left"><textarea name="pro_jj" cols="50" rows="6" id="pro_jj"></textarea></td>
</tr>
<tr>
<td> </td>
<td align="left"><input type="submit" name="Submit" value="添加">
<a href="allpro.asp">所有产品</a></td>
</tr>
</table>
</form>

pro.js代码:

function checkUsername()

{

var username=document.form1.pro_name.value
if (document.form1.pro_name.value.length == 0)
{
alert( "您先输入产品名称!" );
}
else
{
//window.open("chusername.asp?username="+username,"top","width=640,height=400")
if (window.XMLHttpRequest)
{
req = new XMLHttpRequest();
req.overrideMimeType('text/xml');
}
else if (window.ActiveXObject)
{
req = new ActiveXObject("Microsoft.XMLHTTP");
}
document.getElementById( "content" ).innerHTML = "正在验证,请稍候.........";
req.onreadystatechange = processChech;
req.open( "post", "ckpro.asp?username="+username, true );
req.send();
}
}
function processChech()
{
if (req.readyState == 4)
{
var content = document.getElementById( "content" );
if (req.status == 200)
{
var responseText=req.responseText
if (responseText!="ok")
{
//alert(responseText)
content.innerHTML = "sorry 此产品已经承在";
}
if (responseText=="ok")
{
content.innerHTML = "恭喜 你可以添加此产品!";
}
}
else
{
content.innnerText = "验证用户名服务暂时不可用,不过您可以继续添加!";
}
}


}
function ckjw(xh)
{
var proxh=xh
var string1=""
if(proxh=='新车')
{
string1="<select name='pro_price' id='pro_price' >";
string1+="<option value='10万元以下'>10万元以下</option>";
string1+="<option value='10-30万元'>10-30万元</option>";
string1+="<option value='30万元以上'>30万元以上</option>";
string1+="</select> *";
pro_pricetd.innerHTML=string1;
}
if(proxh=='二手车')
{
string1="<select name='pro_price' id='pro_price' >";
string1+="<option value='5万元以下'>5万元以下</option>";
string1+="<option value='5-15万元'>5-15万元</option>";
string1+="<option value='15万元以上'>15万元以上</option>";
string1+="</select> *"
pro_pricetd.innerHTML=string1;
}
if(proxh=='汽配及装饰用品')
{
string1="<input name='pro_price2' type='text' id='pro_price2' value='不论价位' disabled> *";
pro_pricetd.innerHTML=string1;
}


}
function checkform()
{


if (document.form1.pro_name.value.length == 0)
{
alert( "您先输入产品名称!" );
document.form1.pro_name.focus();
return false
}
if (document.form1.pro_type.value.length == 0)
{
alert( "您先选择产品类型!" );
document.form1.pro_type.focus();
return false
}
/* if (document.form1.qy_gm.value.length == 0)
{
alert( "您先选择企业规模!" );
document.form1.qy_gm.focus();
return false
}
if (document.form1.qy_tel.value.length!=0)
{
if (isNaN(document.form1.qy_tel.value)){
alert('请输入数字');
document.form1.qy_tel.select();
return false;
}

}*/

}


Query实现