我想在WordPress中创建一个联系表单, 其中必须填写两个字段之一才能发送。例如, -电子邮件和电话号码是必需的, 但是如果用户仅填写一个字段, 则可以。
#1
这取决于你要如何验证它。
PHP的?你可以执行以下操作:
if ( empty($_POST['name1']) && empty($_POST['name2']) ) {
// Error message
}
JS?你可以执行以下操作:
var input1Val = document.getElementsByName('name1')[0].value;
var input2Val = document.getElementsByName('name2')[0].value;
if ( input1Val.length > 0 || input2Val.length > 0 ) {
// Allow submission
}
#2
`$(document).ready(function () {
$('#forgot_pass_form').validate({ // initialize the plugin
groups: {
names: "uname email"
}, rules: {
uname: {
require_from_group: [1, ".send"]
}, email: {
require_from_group: [1, ".send"]
}
}, submitHandler: function (form) { // for demo
alert('valid form submitted'); // for demo
return false; // for demo
}
});
jQuery.extend(jQuery.validator.messages, {
require_from_group: jQuery.format("'Please enter either username/ email address to recover password'/Please fill out at least {0} of these fields.")
});
});`
和html
<form action="#" class="send_form" id="forgot_pass_form" method="POST">
<fieldset>
<div class="send_row">
<label class="padding-top10">Email</label>
<input type="text" class="send_email send" id="email" name="email"
/> <em>You need to type an email address</em>
</div>
<div class="send_row option">OR</div>
<div class="send_row">
<label class="padding-top10">Username</label>
<input type="text" class="send_username send" id="uname"
name="uname" />
</div>
<div class="send_row send_submitforgotuser">
<input type="submit" value="Submit" />
</div>
</fieldset>
</form>
<a id="docs" href="http://docs.jquery.com/Plugins/Validation" target="_blank">Validation Documentation</a>
工作演示:http://jsfiddle.net/sgmvY/1/
#3
在不使用js的情况下验证表单, 需要开发自己的表单插件。
这是一篇关于它的文章。
更改验证逻辑以了解这两个字段中的逻辑或。
评论前必须登录!
注册