注册 登录
编程论坛 ASP技术论坛

一个关于表单的显示,为什么提交表单无显示?

yqiong 发布于 2007-08-20 11:26, 897 次点击

<html>
<head>
<title>form子对象实例</title>
<script>
sex=new Array();
sex[0]="male";
sex[1]="female";
sele=0;
sexsele=0;
function is()
{var lenth=document.forms[0].length;
var empty=false;
var i;
for(i=0;i<lenth;i++)
{if (document.forms[0].elements[i].type=="text")
if(document.forms[0].elements[i].value=="")
empty=true;
}
if(empty!=true)
{ yname="你的姓名:"+document.forms[0].elements[0].value+"\n";
ylikname="你的别名:"+document.forms[0].elements[1].value+"\n";
ysex="你的性别:"+sex[sexsele]+"\n";
yarea="你所在的地区:"+document.forms[0].elements[3].options[sele].text+"\n";
yexp="备注:"+document.exp.value+"\n";
document.forms[1].showtextarea.value=yname+ylikname+ysex+yarea+yexp;
}
else alert("你的输入不全,请重输:");
}
</script>
</head>

<body>
<center>请输入你的个人信息</center>
<br><br>
<form name="mesgform">
你的姓名:<input type="text" value="" name="nametext" size="10"><br >
你的别名:<input type="text" value="" name="likname" size="10" ><br >
你的性别:<input type="radio" value="1" name="sex" onclick="sexsele=0">female
<input type="radio" value="2" name="sex" onclick="sexsele=1" >male<br>
你所在的地区:<select name="area" multiple size="2" onchange="sele=this.selectedIndex" >
<option value="1">北京市
<option value="2">上海市
<option value="3">南京市
<option value="4">浙江省
</select>
<br>
备注:<textarea name="exp" rows=3 cols=20></textarea><br>
<input type="submit" value='提交信息' onSubmit="is()"><br><br></form>
<form>
你已经输入的信息是:<textarea name="showtextarea" rows="5" cols="40"></textarea><br><br>
</form>
</body>
</html>
程序错在哪呀?

8 回复
#2
multiple19022007-08-20 11:42
form提交给谁的?
#3
Kettyjin19832007-08-20 14:27
<form name="mesgform">
该Form提交给谁啊,
正确的格式是<form name="mesgform" action="" method ="post">
action里填上你要将该Form提交到哪个页面上.
#4
steven10132007-08-20 15:21

同意Kettyjin1983的说法,form的action对象不指定,提交到那里去啊!

#5
madpbpl2007-08-20 16:54
<input type="submit" value='提交信息' onSubmit="is()"><br><br></form>
改成
<input type="submit" value='提交信息' onClick="is()"><br><br></form>
至于如何把值赋给下面的文本域,我还不太会,期待楼下指教。
#6
阳光白雪2007-08-20 17:10

[QUOTE]<html>
<head>
<title>form子对象实例</title>
<script>
sex=new Array();
sex[0]="male";
sex[1]="female";
sele=0;
sexsele=0;
function is(){
var lenth=document.forms[0].length;
var empty=false;
var i;
for(i=0;i<lenth;i++){
if (document.forms[0].elements[i].type=="text")
if(document.forms[0].elements[i].value=="")
empty=true;
}
if(empty!=true){
yname="你的姓名:"+document.mesgform.nametext.value+"\n";
ylikname="你的别名:"+document.mesgform.likname.value+"\n";
ysex="你的性别:"+sex[sexsele]+"\n";
yarea="你所在的地区:"+document.mesgform.area.options[document.mesgform.area.selectedIndex].text+"\n";
yexp="备注:"+document.mesgform.exp.value+"\n";
document.mesgform.showtextarea.value= yname + ylikname + ysex + yarea + yexp;
return false;
}else{
alert("你的输入不全,请重输:");
return false;
}
}
</script>
</head>
<body>
<center>请输入你的个人信息</center>
<br><br>
<form name="mesgform">
你的姓名:<input type="text" value="" name="nametext" size="10"><br >
你的别名:<input type="text" value="" name="likname" size="10" ><br >
你的性别:<input type="radio" value="1" name="sex" onclick="sexsele=0">female
<input type="radio" value="2" name="sex" onclick="sexsele=1" >male<br>
你所在的地区:<select name="area" multiple size="2" onchange="sele=this.selectedIndex" >
<option value="1">北京市
<option value="2">上海市
<option value="3">南京市
<option value="4">浙江省
</select>
<br>
备注:<textarea name="exp" rows=3 cols=20></textarea><br>
<!-- 你的目的是调用本页的JS函数,所以不需要提交 -->
<input type="button" value='提交信息' onClick="is()"><br><br></form>
<form>
你已经输入的信息是:<textarea name="showtextarea" rows="5" cols="40"></textarea><br><br>
</form>
</body>
</html>[/QUOTE]

#7
yqiong2007-08-20 18:49
以下是引用yqiong在2007-8-20 11:26:01的发言:

<html>
<head>
<title>form子对象实例</title>
<script>
sex=new Array();
sex[0]="male";
sex[1]="female";
sele=0;
sexsele=0;
function is()
{var lenth=document.forms[0].length;
var empty=false;
var i;
for(i=0;i<lenth;i++)
{if (document.forms[0].elements[i].type=="text")
if(document.forms[0].elements[i].value=="")
empty=true;
}
if(empty!=true)
{ yname="你的姓名:"+document.forms[0].elements[0].value+"\n";
ylikname="你的别名:"+document.forms[0].elements[1].value+"\n";
ysex="你的性别:"+sex[sexsele]+"\n";
yarea="你所在的地区:"+document.forms[0].elements[3].options[sele].text+"\n";
yexp="备注:"+document.forms[0].exp.value+"\n";
document.forms[1].showtextarea.value=yname+ylikname+ysex+yarea+yexp;
}
else alert("你的输入不全,请重输:");
}
</script>
</head>

<body>
<center>请输入你的个人信息</center>
<br><br>
<form name="mesgform">
你的姓名:<input type="text" value="" name="nametext" size="10"><br >
你的别名:<input type="text" value="" name="likname" size="10" ><br >
你的性别:<input type="radio" value="1" name="sex" onclick="sexsele=0">female
<input type="radio" value="2" name="sex" onclick="sexsele=1" >male<br>
你所在的地区:<select name="area" multiple size="2" onchange="sele=this.selectedIndex" >
<option value="1">北京市
<option value="2">上海市
<option value="3">南京市
<option value="4">浙江省
</select>
<br>
备注:<textarea name="exp" rows=3 cols=20></textarea><br>
<input type="submit" value='提交信息' onSubmit="is()"><br><br></form>
<form>
你已经输入的信息是:<textarea name="showtextarea" rows="5" cols="40"></textarea><br><br>
</form>
</body>
</html>
程序错在哪呀?

没提交,只需在本页面内显示出来

#8
Kettyjin19832007-08-21 08:27
如果只需要在本页显示,我的理解还是那样,在action="",写上本页的名字就OK了.
#9
craft001wen2007-08-21 08:49
action="?" 表单form默认为本页
不过,你是通过JS来获取textarea的值,所以根本不用提交表单
改为<input type="button" value='提交信息' onClick="is()">,和阳光白雪一样
1