悬赏80!请会javascript的高手帮我帮我做一个验证表单代码,要求如下图,html代码我贴在下面,谢谢!

<html><head><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/><title>... <html><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>无标题文档</title></head><body><form id="form1" name="form1" method="post" action="">姓名:<label><input type="text" name="textfield" id="textfield" /></label><p>性别: <label> <input type="radio" name="radio" id="radio" value="先生" /> </label> 先生 <label> <input type="radio" name="radio" id="radio2" value="女士" /> </label> 女士</p><p>手机: <label> <input type="text" name="textfield2" id="textfield2" /> </label></p><p>装修材料: <label> <select name="select" id="select"> <option value="轻钢龙骨" selected="selected">轻钢龙骨</option> <option value="硅酸钙板">硅酸钙板</option> <option value="加压纤维水泥板">加压纤维水泥板</option> <option value="无机预涂板">无机预涂板</option> <option value="气体壁纸">气体壁纸</option> </select> </label>按需求选择</p><p>需求数量: <label> <input type="text" name="textfield3" id="textfield3" /> </label></p><p>联系地址: <label> <input type="text" name="textfield5" id="textfield5" /> </label>客户详细地址</p><p>其他要求: <label> <textarea name="textarea" id="textarea" cols="45" rows="5"></textarea> </label></p></form></body></html> 展开
 我来答
lyz810
2013-05-04 · 知道合伙人互联网行家
lyz810
知道合伙人互联网行家
采纳数:7531 获赞数:31777
前端开发工程师

向TA提问 私信TA
展开全部
function getValue(id){
    return document.getElementById(id).value;
}
function checkForm(){
    if(!getValue('textfield') || !getValue('textfield2') || !getValue('textfield3') || !getValue('textfield5')){//任何一个是空的
        return false;
    }else if(getValue('textfield').length>8 || getValue('textfield').match(/[^\u4E00-\u9FA5]/)){
        return false;
    }else if(getValue('textfield2')>11 || getValue('textfield2').match(/[^\d]/)){
        return false;
    }else if(getValue('textfield3').match(/[a-zA-z]/) || getValue('textfield5').match(/[a-zA-Z]/)){
        return false;
    }
    return true;
}

调用checkForm,如果符合要求返回true否则返回false

更多追问追答
追问
这个如何调用,小弟真的不会弄,能后帮我全部弄好,弄在我的源代码里面,不盛感激!还有就是如果用户输入不符合要求要弹出一个提示!
追答
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
【此处复制上面代码】
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="" onsubmit="checkForm();">
姓名:
<label>
<input type="text" name="textfield" id="textfield" />
</label>
<p>性别:
  <label>
  <input type="radio" name="radio" id="radio" value="先生" />
  </label>
  先生
  <label>
  <input type="radio" name="radio" id="radio2" value="女士" />
  </label>
  女士</p>
<p>手机:
  <label>
  <input type="text" name="textfield2" id="textfield2" />
  </label>
</p>
<p>装修材料:
  <label>
  <select name="select" id="select">
    <option value="轻钢龙骨" selected="selected">轻钢龙骨</option>
    <option value="硅酸钙板">硅酸钙板</option>
    <option value="加压纤维水泥板">加压纤维水泥板</option>
    <option value="无机预涂板">无机预涂板</option>
    <option value="气体壁纸">气体壁纸</option>
        </select>
  </label>
按需求选择</p>
<p>需求数量:
  <label>
  <input type="text" name="textfield3" id="textfield3" />
  </label>
</p>
<p>联系地址:
  <label>
  <input type="text" name="textfield5" id="textfield5" />
  </label>
客户详细地址</p>
<p>其他要求:
  <label>
  <textarea name="textarea" id="textarea" cols="45" rows="5"></textarea>
  </label>
</p>
</form>
</body>
</html>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
缓步莫迟疑C
2013-05-04 · TA获得超过1.1万个赞
知道大有可为答主
回答量:6217
采纳率:73%
帮助的人:6494万
展开全部

首先,给你的表单添加一个"提交"按钮,然后在form标签中添加事件绑定,如:

<form .... onsubmit="javascript:return chkfrm(this);">

之后使用如下代码验证:

function chkfrm(f){
   if(!/^[\u4e00-\u9fa5]{2,8}$/gi.test(f.textfield.value)){
      alert('姓名不能为空,只能是中文且不得超过8个字符.');
      return false;
   }
   if(!/^1(3[0-9]|4[57]|5[012356789]|8[0-9])\d{8}$/gi.test(f.textfield2.value)){
      alert('手机不能为空或不是有效的手机号码.');
      return false;
   }
   if(!/^\d+$/gi.test(f.textfield3.value)){
      alert('需求数量不能为空或不是有效的数值.');
      return false;
   }
   if(!/^[\u4e00-\u9fa5]+\w*$/gi.test(f.textfield5.value)){
      alert('联系地址不能为空且必须包含中文.');
      return false;
   }
}

对于地址,做了一些修改,以适应类似于"A座"等这样地址中含有字母的情况,改为必须以汉字开头.

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式