【发布时间】:2017-05-23 20:53:50
【问题描述】:
我正在尝试在通过引导警报输出验证错误的 div 上添加 JQuery 抖动效果。
PHP 表单验证部分
<?php
$nameErr = $emailErr = $passErr = $cpassErr = "";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = '<div class="alert alert-danger">Name is required !</div>';
}
if (empty($_POST["email"])) {
$emailErr = '<div class="alert alert-danger">Email is required !</div>';
}
if (empty($_POST["pass"])) {
$passErr = '<div class="alert alert-danger">Password is required !</div>';
} elseif (!empty($_POST["pass"]) < 6) {
$passErr = '<div class="alert alert-danger">Minimum 6 characters required !</div>';
}
if (empty($_POST["cpass"])) {
$cpassErr = '<div class="alert alert-danger">Confirm password is required !</div>';
} elseif ($_POST["pass"] != $_POST["cpass"]) {
$cpassErr = '<div class="alert alert-danger">Password fields do not match !</div>';
}
}
?>
HTML 表单
<div class="container-fluid mainbox row">
<h2 style="text-align: center;">Sign Up Form</h2>
<div class="container-fluid calbox col-md-4 offset-md-4">
<form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
<div class="form-group">
<label style="padding-top: 10px;" class="col-form-label">Name</label>
<input type="text" class="form-control" placeholder="Type your name here" name="name" id="name">
<div class="errBox" style="padding-top: 5px;">
<?php echo $nameErr;?>
</div>
</div>
<div class="form-group">
<label class="col-form-label">Email</label>
<input type="email" class="form-control" placeholder="Type your email here" name="email" id="email">
<div class="errBox" style="padding-top: 5px;">
<?php echo $emailErr;?>
</div>
</div>
<div class="form-group">
<label class="col-form-label">Phone Number</label>
<input type="tel" class="form-control" placeholder="Type your phone number here" name="phone" id="phone">
</div>
<div class="form-group">
<label class="col-form-label">Password</label>
<input type="password" class="form-control" placeholder="Type a password here" name="pass" id="pass">
<div class="errBox" style="padding-top: 5px;">
<?php echo $passErr;?>
</div>
</div>
<div class="form-group">
<label class="col-form-label">Confirm Password</label>
<input type="password" class="form-control" placeholder="Retype the password here" name="cpass" id="cpass">
<div class="errBox" style="padding-top: 5px;">
<?php echo $cpassErr;?>
</div>
</div>
<div class="form-group row offset-sm-9" style="padding-left: 10px;">
<button type="submit" class="btn btn-outline-primary" name="btn" value="signup" id="signupbtn">Register</button>
</div>
</form>
</div>
</div>
JS
<script>
$(document).ready(function() {
$("button").click(function() {
$(".errBox").effect("shake");
});
});
</script>
所有这些代码都在一个文件中。如您所见,我将包含 div 的引导程序警报类分配给错误变量,并在 html 表单中回显错误变量,因此包含 div 的警报类将弹出。我在另一个 div 中回显错误变量,并给出了一个名为 errBox 的类名。并在页面底部写了 JQuery 摇动效果脚本。用户点击按钮后,会弹出引导警报中的错误,但 JQuery 抖动效果不起作用..
【问题讨论】:
标签: javascript php jquery html twitter-bootstrap