php js表单验证问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php js表单验证问题相关的知识,希望对你有一定的参考价值。

为什么它只验证第一项也就是用户名为空的情况,其他情况直接跳过?哪里错了?
function check()
if(document.getElementById("name").value=="")
alert("用户名为空");
document.form1.name.focus();
return false;


if(!document.getElementById("name").value.match(/^[\x4e00-\x9fa5]2,4+$/u))
alert("用户名格式错误");
document.form1.name.focus();
return false;


if(document.getElementByName("sex").value=="")
alert("年龄为空");
document.form1.sex.focus();
return false;


if(document.getElementById("age").value=="")
alert("年龄为空");
document.form1.age.focus();
return false;


if(!document.getElementById("age").value.match(/^([1-9]|[0-9]2|[1][01][0-9]|120)$/))
alert("年龄格式错误");
document.form1.age.focus();
return false;


if(document.getElementById("pgonenumber").value=="")
alert("电话为空");
document.form1.phonenumber.focus();
return false;


if(!document.getElementById("pgonenumber").value.match(/^1(3|4|5|7|8)\d9$/))
alert("电话格式错误");
document.form1.pgonenumber.focus();
return false;


if(document.getElementById("email").value=="")
alert("邮箱为空");
document.form1.email.focus();
return false;


if(!document.getElementById("email").value.match(/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/))
alert("邮箱格式错误");
document.form1.email.focus();
return false;


document.form1.submit();

<!DOCTYPE html>
<html>
  <head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
RunJS 演示代码
</title>
<style>
*
margin:0;
padding:0;

table
margin:auto;
width:300px;
border:1px solid black;
border-collapse:collapse;

th,td
border:1px solid black;

</style>
<script>
var check = function(form)
var reg = /^\\s+|\\s+$/g;
var sexs = form.sex, isChecked = false;
for(var i = 0; i < sexs.length; i++)
if(sexs[i].checked)
isChecked = true;
break;


if(form.user.value.replace(reg,"") == "") 
alert("用户名不能为空!");
form.user.focus();
return false;
else if(!isChecked)
alert("你的性别是?!");
return false;
else if(!/^[1-9]\\d0,2$/.test(form.age.value))
alert("输入的年龄不规则");
form.age.focus();
form.age.select();
return false;
else if(!/^1([38]\\d|4[57]|5[0-35-9]|7[06-8]|8[89])\\d8$/.test(form.phone.value))
alert("手机号不符合规则");
form.phone.focus();
form.phone.select();
return false;
else if(!/^([a-z0-9_\\.-]+)@([\\da-z\\.-]+)\\.([a-z\\.]2,6)$/.test(form.email.value))
alert("邮箱不对");
form.email.focus();
form.email.select();
return false;

return true;

</script>
  </head>
<body>
    <form name="form1" onsubmit="return check(this)">
<table>
<tr>
<td>
用户名:
</td>
<td>
<input type="text" name="user" />
</td>
</tr>
<tr>
<td>
性别:
</td>
<td>
<label>
<input type="radio" name="sex" value="男" />

</label>
<label>
<input type="radio" name="sex" value="女" />

</label>
</td>
</tr>
<tr>
<td>
年龄:
</td>
<td>
<input type="text" name="age" />
</td>
</tr>
<tr>
<td>
电话:
</td>
<td>
<input type="text" name="phone" />
</td>
</tr>
<tr>
<td>
邮箱:
</td>
<td>
<input type="text" name="email" />
</td>
</tr>
<tr>
<td colspan=2>
<input type="submit" value="提交" />
<input type="reset" value="重置" />
</td>
</tr>
</table>
</form>
  </body>
</html>
参考技术A return ;
直接中断,下面的就不执行了追问

对了,问题是用户名不为空它也不会执行下面程序。

php WPForms:根据表单ID更改JS验证字符串(对多语言站点有用)

<?php

add_filter( 'wpforms_frontend_strings', function( $strings ) {
	global $post;

	if ( ! isset( $post->post_content ) ) {
		return $strings;
	}

	preg_match( '~\[wpforms id=\"(\d+)\"~', $post->post_content, $matches );

	if ( ! is_array( $matches ) || ! isset( $matches[1] ) ) {
		return $strings;
	}

	$form_id = (int) $matches[1];

	// This form ID should be changed and the text below it as well.
	if ( 181 === $form_id ) {
		$strings['val_required'] = 'PUT HERE YOUR CUSTOM TEXT';
	}

	return $strings;
} );

以上是关于php js表单验证问题的主要内容,如果未能解决你的问题,请参考以下文章

Bootstrap+PHP表单验证实例

什么是表单验证?

JQuery.validate.js 表单验证

php WPForms:根据表单ID更改JS验证字符串(对多语言站点有用)

js表单验证的问题

js怎么验证表单?