【发布时间】:2014-05-28 20:29:44
【问题描述】:
我有两种形式:一种用于添加新用户,另一种用于修改用户数据。
表单基本相同,唯一不同的是在修改用户名字段时不要检查数据库中是否存在。
在 Js 文件中,我进行字段验证。其中一项验证是检查用户名是否已存在于数据库中。在修改中不应考虑这一点。
这就是我想这个的原因,但它不起作用:
我用 div id 区分这两种形式。
(查看 sn-p add_user 表单):
<div id="add_user">
<form action="{site_url()}admin/updateFrontUser" id="form_sample_2" class="form-horizontal" method="post">
(查看 sn-p edit_user 表单):
<div id="edit_user">
<form action="{site_url()}admin/updateFrontUser" id="form_sample_2" class="form-horizontal" method="post">
然后:
(js文件sn-p)
var algo = $('.add_user', form2);
form2.validate({
errorElement: 'span', //default input error message container
errorClass: 'help-inline', // default input error message class
focusInvalid: false, // do not focus the last invalid input
ignore: "",
rules: {
username: {
required: true,
minlength: 2,
maxlength: 15,
pattern: "[A-z](([\._\-][A-z0-9])|[A-z0-9])*[a-z0-9_]*",
remote: {
data: function(){
if (algo) {
url: '/admin/checkUsername';
type: 'POST';
};
}
}
},
它应该检查用户名是否存在的远程规则。该功能已经内置在我的 admin.php 中。在我进行我提到的修改之前,它以前工作过。
所以要继续,我该怎么做才能只对新用户使用远程规则(我的意思是,当使用添加表单时)?
【问题讨论】:
-
你的意思是像在元素的类属性中添加'remote'(不带单引号)吗?
-
我想知道我是否可以在 jquery 的规则中放置一个 if 语句..
-
你的意思是 jquery 验证的规则。您可以创建自己的规则,所以可以。
-
@MikeCheel no.. 这不是我的问题。我知道我能做到,事实上我做到了。我只想知道如何在规则中添加 if 语句..
-
所以你的意思是现有的规则。这取决于规则(毕竟它们只是开箱即用的“自定义”规则。“远程”规则采用一个使用 jquery ajax 选项的对象,因此您可以在任何可以做的地方使用函数(或 if)在 jquery ajax 选项中。所以我认为这取决于规则。
标签: javascript jquery forms jquery-validate