请教各位老师一个关于菜单连动问题,根据出生年和学历得出毕业年份的问题。给100分

brian0451 2005-04-04 10:18:40
问题是这样的,在一个表单里,一共有3个表单项。第一表单项是一个文本域,让用户输入出生
年份(例如输入:1980),第二个表单项是一个下拉列表,列表内容是初中、高中、大专、大
学、共计四项,其中默认值是高中,第三个表单项是一个文本域,用来显示通过出生年份+根据
学历所推算出上学的时间所得的毕业年份。

着重说明,第二个表单项里的学历是应该带值的,初中为17,高中为20,大专为23,大学为24

我想要的效果就是当输入完第一个表单项出生年份时(1980),这时因为第二个表单项默认是高中,那么第三个表单项文本域里的值就自动生成等于2000(出生年份1980+高中的值20的和),当我改成大专学历时,第三个文本域的值则自动生成2003了,依次类推,不知道怎么才能做出这个效果,望各位大哥多多指教,小弟我不胜感激!!!也不知道如何触发JS,再此感谢!!!
...全文
105 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
meizz 2005-04-04
  • 打赏
  • 举报
回复
<form name=form1>
<input name=byear onblur="mm()" value="1980">
<select name=type onchange="mm()">
<option value="初中">初中
<option value="高中" selected>高中
<option value="大专">大专
<option value="大学">大学
</select>
<input name=total>
</form>
<SCRIPT LANGUAGE="JavaScript">
function mm()
{
var mm=
{
"初中" : 17,
"高中" : 20,
"大专" : 23,
"大学" : 24
}
var t = mm[document.form1.type.value];
var b = document.form1.byear.value;
if(b=="") return;
document.form1.total.value = parseInt(t)+parseInt(b);
}
</SCRIPT>
brian0451 2005-04-04
  • 打赏
  • 举报
回复
等下,还有个漏洞,是我没提完全吧,当我提交表单的时候,学历字段是要往数据库里写入的啊,值是“初中、高中、大学”而不是“17、20、24”啊,怎么办呢??
brian0451 2005-04-04
  • 打赏
  • 举报
回复
meizz(梅花雪) !!!!感谢你!真心的感谢你!!!你救小弟于水火之中啊,给你100分也不能表达出我对你的崇敬之意!!!100分全给你,我希望能认识你,结交你这个朋友,不知道可不可以,我的QQ号是78813558,你把号告诉我好吗?
xjdawu 2005-04-04
  • 打赏
  • 举报
回复
7岁上小学?
meizz 2005-04-04
  • 打赏
  • 举报
回复
<form name=form1>
<input name=byear onblur="mm()">
<select name=type onchange="mm()">
<option value=17>初中
<option value=20 selected>高中
<option value=23>大专
<option value=24>大学
</select>
<input name=total>
</form>
<SCRIPT LANGUAGE="JavaScript">
function mm()
{
var t = document.form1.type.value;
var b = document.form1.byear.value;
if(b=="") return;
document.form1.total.value = parseInt(t)+parseInt(b);
}
</SCRIPT>
brian0451 2005-04-04
  • 打赏
  • 举报
回复
赞!!

87,901

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧