在ajax验证中调用javascript
calling javascript in ajax validation
我有两个密码输入字段:
<input class="form-control" type="password" name=password placeholder="Password"/>
和
<input class="form-control" type="password" id="button" placeholder="Confirm Password" onblur=";"/>
我想使用ajax验证密码是否相同,如果它们没有直接在输入字段下面显示错误,如果不是,我想调用一个javascript函数来生成密码的哈希(我有一个javascript功能,我只需要调用这个函数)
到目前为止,我拥有的是:
$(function() {
$("#create_user").click(function(e)) {
e.preventDefault();
var password = $("#password-input").val();
var password_confirm = $("#password-confirm-input").val();
if (!password.length || password != password_confirm ) {
$("#label").html("Passwords do not match");
}
}
});
这是我的html代码的一部分:
<form id="myform" action="add_user.php" method="POST">
<div class="form-group">
<input class="form-control" type="text" id="username" name="username" placeholder="Username"/>
</div>
<div class="form-group">
<input class="form-control" type="password" id="password-input" name="password" placeholder="Password"/>
</div>
<div class="form-group">
<input class="form-control" type="password" id="password-confirm-input" placeholder="Confirm Password" onblur=";"/>
</div>
<div class="form-group">
<input class="form-control" type="text" placeholder="User Type"/>
</div>
<div class="form-group" id="msg">
<input class="form-control" type="text" name=email placeholder="E-mail Address"/>
<label id="label" for="male">Male</label>
</div>
<br>
<div class="form-group pull-right">
<input class="btn btn-success" id="create_user" value="Create User"/>
<input class="btn btn-success" type="submit" id="create_user2" value="Create User"/>
</div>
该代码不进行验证
我不知道为什么需要ajax来比较密码。您可以在javascript中执行此操作。
假设password
和password2
是文本框的Id值,save
是按钮的Id值。单击该按钮将触发比较。
$(function(){
$("#save").click(function(e){
e.preventDefault();
var p1=$("#password").val();
var p2=$("#password2").val();
$("#msg").html("");
if(p1!==p2)
{
$("#msg").html("Passwords do not match");
}
});
});
这是一个工作样品。
编辑:根据OP的评论
您的验证没有启动的原因是因为两个问题。
1) jquery点击事件注册到id为create_user
(#create_user
)的元素,但在HTML标记中,按钮的id是create_user2
2) 这里有语法错误。您正在关闭不应该关闭的函数(在e
之后)。
$("#create_user").click(function(e)) {
因此,解决方案是更正js代码以使用正确的按钮id并修复语法错误。
$(function(){
$("#create_user2").click(function(e) {
e.preventDefault();
var password = $("#password-input").val();
var password_confirm = $("#password-confirm-input").val();
$("#label").html("");
if (!password.length || password != password_confirm ) {
$("#label").html("Passwords do not match");
}
});
});
这是一个工作样本。
相关文章:
- 我需要从php调用javascript或jquery
- 如何在webView,Android中从@JavascriptInterface方法调用Javascript
- 使用html表单中的参数调用JavaScript函数
- 可以´t调用JavaScript中的函数
- 在按钮上调用Javascript函数
- 如何从Objective-C代码中调用javascript代码
- 当库在页脚中加载时,基于PHP条件调用Javascript
- 可以't在Jasmine中调用Javascript函数
- 在page_load事件上调用javascript函数
- 如何在ajax中调用javascript对象的方法
- 如何使用WPF调用JavaScript对象的函数
- 我们可以用参数对象集合而不是原始数据来调用JavaScript collection.reduce()方法吗
- 在新的浏览器选项卡上加载新的aspx页面后调用JavaScript函数
- 从附加文本调用javascript(订单车)
- 在线程循环中调用JavaScript
- 在指定时间后多次调用Javascript中的函数
- 未调用Javascript onscroll事件
- 如何正确调用Javascript中的匿名函数
- 从字符串调用javascript函数
- 无法从活动调用 javascript 函数