JavaScript判断表单元素有没有填写的问题

atao22 2007-04-27 06:51:02
表单中我有一个单行文本框(主题)和一个按钮选择元素(留言类型),在以下的JavaScript判断中,主题不能为空可以正确判断,而您没有选择留言类型不能运行,应该怎么写?


<script language="JavaScript">
<!--
//函数check_Null用来进行客户端验证
function check_Null(){

if (document.form1.title.value==""){
alert("主题不能为空!");
return false;
}

if (document.form1.Kind.value==""){
alert("您没有选择留言类型!");
return false;

}
// -->
</script>

<script language="JavaScript">


<form method="post" action="add.asp" name="form1" onSubmit="javascript: return check_Null();">
<table border="0" width=700 bgcolor="#ADDDF3" align="center">

<tr>
<td>留言类型:</td>
<td>
<input name="Kind" type="radio" value="投诉">投诉
<input name="Kind" type="radio" value="建议">建议
<input name="Kind" type="radio" value="其他">其他
<font color="#FF0000">(必填)</font></td>
</tr>

<tr>
<td width="74">主题:</td>
<td width="616"><input type="text" name="title" size="78" maxlength="100"><font color="#FF0000">(必填)</font></td>
</tr>

</form>
...全文
1402 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
jinjuduo 2007-04-30
  • 打赏
  • 举报
回复
我的方法是错的
你比较以下下面的代码

alert(typeof kind[i].checked);//返回布尔值
alert(typeof checkRD)//返回function

atao22 2007-04-30
  • 打赏
  • 举报
回复
补充一点,所有表单元素,除了判断按钮有没有选择,用leohuang(LEO) 给我的方法外,判断其余元素,全部用

function check_Null(){

if (document.form1.title.value==""){
alert("主题不能为空!");
return false;
}


}
atao22 2007-04-30
  • 打赏
  • 举报
回复
leohuang(LEO) 给我的方法,我试验过了,是对的。jinjuduo() 给的方法,我看了,按理说,是leohuang(LEO) 给我的方法的更加精炼的一个写法,可是就是不能通过,选了,还说我没有选择留言类型。很奇怪?
leyan728 2007-04-28
  • 打赏
  • 举报
回复
http://leyan.net/index.php?show=blog&id=198
一个功能强大的表单验证.满足你大部分需求.如果你正则ok的话.就完美了!
xz_xq 2007-04-28
  • 打赏
  • 举报
回复
s = document.getElementsByName("Kind")
flag=true
for(i = 0;i<s.length;i++)
{
if(s[i].checked)
{
flag = false
}
}
if (flag ){
alert("您没有选择留言类型!");
return false;

}
fish1719 2007-04-28
  • 打赏
  • 举报
回复
<script language="JavaScript">
<!--
//函数check_Null用来进行客户端验证
function check_Null()
{
var s=document.getElementsByName("Kind");
var count=0;
if (document.form1.title.value=="")
{
alert("主题不能为空!");
return false;
}
else
{
for(var i = 0;i<s.length;i++)
{
if(s[i].checked)
{
return true;
break;
}
else
{
count++;
}
}
if (count==s.length)
{
alert("您没有选择留言类型!");
return false;
}
}
}

hy_lihuan 2007-04-27
  • 打赏
  • 举报
回复
楼上都说了原因.
adverse 2007-04-27
  • 打赏
  • 举报
回复
你document.form1.Kind取到的是个对象数组(因为有三个所以数组长度是3),所以你要挨个校验。
<script language="JavaScript">
<!--
//函数check_Null用来进行客户端验证
function check_Null(){
if (document.form1.title.value==""){
alert("主题不能为空!");
return false;
}
var kind=document.getElementsByName("Kind");
for(i=0;i<kind.length;i++){
if(kind[i].checked)
break;
}
if (i >= kind.length)
{
alert("您没有选择留言类型!");
return false;
}
}
// -->
</script>

<form method="post" action="add.asp" name="form1" onSubmit="return check_Null();">
<table border="0" width=700 bgcolor="#ADDDF3" align="center">

<tr>
<td>留言类型:</td>
<td>
<input name="Kind" type="radio" value="投诉">投诉
<input name="Kind" type="radio" value="建议">建议
<input name="Kind" type="radio" value="其他">其他
<font color="#FF0000">(必填)</font></td>
</tr>
<tr>
<td width="74">主题:</td>
<td width="616"><input type="text" name="title" size="78" maxlength="100"><font color="#FF0000">(必填)</font></td>
</tr>
<input type="submit" >
</form>
jinjuduo 2007-04-27
  • 打赏
  • 举报
回复
<script language="JavaScript">
<!--
//函数check_Null用来进行客户端验证
function check_Null(){
if (document.form1.title.value==""){
alert("主题不能为空!");
return false;
}
var kind=document.getElementsByName("Kind");
for(var i=0;i<kind.length;i++){
if(!kind[i].checked)
alert("您没有选择留言类型!");
return false;
}
}
// -->
</script>

<form method="post" action="add.asp" name="form1" onSubmit="return check_Null();">
<table border="0" width=700 bgcolor="#ADDDF3" align="center">

<tr>
<td>留言类型:</td>
<td>
<input name="Kind" type="radio" value="投诉">投诉
<input name="Kind" type="radio" value="建议">建议
<input name="Kind" type="radio" value="其他">其他
<font color="#FF0000">(必填)</font></td>
</tr>
<tr>
<td width="74">主题:</td>
<td width="616"><input type="text" name="title" size="78" maxlength="100"><font color="#FF0000">(必填)</font></td>
</tr>
<input type="submit" >
</form>
melodywithme 2007-04-27
  • 打赏
  • 举报
回复
<script language="JavaScript">
<!--
//函数check_Null用来进行客户端验证
function check_Null(){

if (document.form1.title.value==""){
alert("主题不能为空!");
return false;
}
var kind=document.getElementsByName("kind");
var chose=false
for (i=0;kind.lengthl;i++){
if (kind(i).value!="")
chose=true;
}
if (!chose){
alert("选择");
         return false;
}
}
// -->
</script>




<form method="post" action="add.asp" name="form1" onSubmit="javascript: return check_Null();">
<table border="0" width=700 bgcolor="#ADDDF3" align="center">

<tr>
<td>留言类型:</td>
<td>
<input name="Kind" type="radio" value="投诉">投诉
<input name="Kind" type="radio" value="建议">建议
<input name="Kind" type="radio" value="其他">其他
<font color="#FF0000">(必填)</font></td>
</tr>

<tr>
<td width="74">主题:</td>
<td width="616"><input type="text" name="title" size="78" maxlength="100"><font color="#FF0000">(必填)</font></td>
</tr>

</form>
孟子E章 2007-04-27
  • 打赏
  • 举报
回复
s = document.getElementsByName("Kind")
flag=true
for(i = 0;i<s.length;i++)
{
if(s[i].checked)
{
flag = false
}
}
if (flag ){
alert("您没有选择留言类型!");
return false;

}
leohuang 2007-04-27
  • 打赏
  • 举报
回复
<script language="JavaScript">
<!--
//函数check_Null用来进行客户端验证
function check_Null(){

if (document.form1.title.value==""){
alert("主题不能为空!");
return false;
}

if(!checkRD()){
alert("您没有选择留言类型!");
return false;
}

}


function checkRD(){
var kinds = document.getElementsByName("Kind");
for(var i=0;i<kinds.length;i++){
if(kinds[i].checked)return true;
}
return false;
}
// -->
</script>

87,993

社区成员

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

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