我正在尝试使用此插件:http://docs.jquery.com/Plugins/Validation
其中#user_new是我的表单的id,这就是我的代码:
$('#user_new').validate({
rules: {
user[username]: "required",
user[email]: {
required: true,
email: true
}
},
messages: {
user[username]: "Please specify your name",
user[email]: {
required: "We need your email address to contact you",
email: "Your email address must be in the format of name@domain.com"
}
}
})
Run Code Online (Sandbox Code Playgroud)
这些是我的输入字段在呈现页面时的外观(由Rails生成):
<input class="clearField curved" id="user_f_name" name="user[f_name]" size="30" type="text" value="First Name" /><br />
<input class="clearField curved" id="user_l_name" name="user[l_name]" size="30" type="text" value="Last Name" /><br />
<input class="clearField curved" id="user_username" name="user[username]" size="30" type="text" …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用jquery表单验证器实现客户端验证,但我已按照指南进行了搜索,并在谷歌搜索我的问题的答案,可能存在冲突,prototype.js 我已将行添加var JQuery = jQuery.noConflict();到我的jquery-1.5.1.min.js文件底部.
萤火虫还在说
$("#contact") is null
$("#contact").validationEngine();
我将所需的javascript和jQuery代码加载到我的主页面中,template.php file然后调用一个view被叫联系人.
联系页面视图:
<section id="content" class="contact-us">
<h1>Contact</h1>
<div id ="formLayout" class="contactForm">
<section id = "validation"></section>
<form action=contact" method="post" accept-charset="utf-8" id="contact" name="contact">
<fieldset>
<label><label for="name">Name:</label><span class="small">Required Field - Text</span></label>
<input type="text" name="name" value="" id="name" class="validate[required[custom[onlyLetterSp]]]" />
<div id="error"></div>
<label><label for="email">Email:</label><span class="small">Required Field - yourname@example.com</span></label>
<input type="text" name="email" value="" id="email" class="validate[required[custom[onlyLetterSp]]]" />
<div id="error"></div>
<label><label for="phone">Phone:</label><span class="small">Required Field - 021214589</span></label> …Run Code Online (Sandbox Code Playgroud) 我正在使用jQuery Validate插件,并希望使用固定数量的数字验证输入字段,中间带有短划线,如:XXXXXX-XXXX.我知道如何验证数字,但我怎样才能获得插件来验证这种特定的格式?!
谢谢!
我有一个附加到我的表单提交按钮的submit()事件,在我开始使用jquery验证插件之前,我可以一键提交此表单.现在由于某种原因需要再次点击.如何让它回到单击?
$("form").submit(function(){
$(".selector").validate({
rules: {
performance : {
required: true
//customvalidation: true
},
location : {
required: true
//customvalidation: true
},
date : {
required: true
//customvalidation: true
}
},
messages: {
performance : {
required: "enter a show name"
//customvalidation: true
},
location : {
required: "enter a location"
//customvalidation: true
},
date : {
required: "pick a date"
//customvalidation: true
}
}
return false;
}); //closes submit()
});
Run Code Online (Sandbox Code Playgroud) 我有以下的表单复选框的html代码
<div class="drinking col-xs-12">
<div class="col-xs-7 drinkingLeft">
<input type="checkbox" name="allwines" id="allwines" value="0" class="require-one col-xs-1 styled myClassA" value="0" data-label="All Wines" />
<input id='allwinesHidden' type='hidden' value='0' name='allwines'>
</div>
<div class="col-xs-5 drinkingLeft">
<input type="checkbox" name="beer" id="beer" value="0" class="require-one col-xs-1 styled myClassB" value="0" data-label="Beer" />
<input id='beerHidden' type='hidden' value='0' name='beer'>
</div>
<div class="clearix"></div>
<div class="col-xs-7 drinkingLeft">
<input type="checkbox" name="redwines" id="redwines" value="0" class="require-one col-xs-1 styled myClassC" value="0" data-label="Red Wines" />
<input id='redwinesHidden' type='hidden' value='0' name='redwines'>
</div>
<div class="col-xs-5 drinkingLeft">
<input type="checkbox" name="cider" id="cider" value="0" class="require-one …Run Code Online (Sandbox Code Playgroud) 我使用jQuery Validation方法"greaterThan",如Jon和Mike E.在Validate中描述的结束日期大于jQuery的开始日期
但是当我发送时:EndDate:{greaterThan:"#StartDate"}结果消息是'必须大于#StartDate'.我想做像EndDate这样的事情:{greaterThan:["#StartDate","Start Date"]}
但我不确定如何修改"更大的"方法.我尝试将'value'更改为'options [0]',但那是失败的.
有什么建议?谢谢.山姆.
我想在单个元素中进行2次ajax调用验证.这是我到目前为止出来的.
我的HTML:
<form id="xForm" method="post" action="/someurl">
<input id="oUrl" name="oUrl" type="text" />
<button type="submit">Register</button>
</form>
Run Code Online (Sandbox Code Playgroud)
我的javascript:
$('#xForm').validate({
rules:{
oUrl:{
required:true,
minlength:4,
maxlength:20,
remoteA:'/register/checkValidUrl',
remoteB:'/register/checkUrlAvailable'
}
},
messages:{
oUrl:{
remoteA:'Url not valid',
remoteB:'Url already been taken'
}
}
});
Run Code Online (Sandbox Code Playgroud)
其实我有两(2)个远程网址可以查看.我看到的大多数示例仅使用1个(一个)远程站点.那我该怎么做呢?
我这样做的原因是因为我无法找到一种方法来制作服务器站点返回错误消息的自定义验证器,并且在客户端使用它.
我正在使用jquery.validate v1.14.0JörnZaefferer
<script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
Run Code Online (Sandbox Code Playgroud)
我有一个项目,所有验证工作正常.如果未填充必填字段,则客户端验证会在表单汇总之前将其选中.
然而,我将所有这些形式移动到boostrap模态,并且页面的表单通过ajax调用在模态内动态加载.在此更改之后,我的客户端验证永远不会触发,我还注意到验证插件不像novalidate="novalidate"以前那样将标记添加到表单中.
这是我的代码简化
然后我使用以下jquery,因为我想捕获所有表单提交并执行一些额外的逻辑:
$(document).on('submit', '.formDetail', function (e) {
e.preventDefault();
//added this to see if it would throw error but it doesn't
var form = $(".formDetail");
form.validate();
//this is always true
if ($(this).valid()) {
$.ajax({
processData: false,
contentType: false,
data: new FormData(this),
type: $(this).attr('method'),
url: $(this).attr('action'),
success: function (data) {
//other logic
}
});
}
});
Run Code Online (Sandbox Code Playgroud)
如果String1留空并且我提交并逐步执行javascript控制台'($(this).valid())'是alwasy true.如果我改变它($(".formDetail").valid()) 的结果是相同的,即总是如此true.
它也没有像我在切换到动态ajax模式窗体之前那样在HTTP POST之前在屏幕上显示错误消息.
我怎样valid()才能上班.单步执行代码时,我的控制台中没有javascript错误,并且 …
ajax jquery jquery-validate unobtrusive-validation bootstrap-modal
我的表格结尾如下:
<input type="submit" name="login" value="Login" class=" btn btn-primary" >
<a href="register.php" ><button class="btn btn-primary" >Register</button></a>
<a href="/"><button class="btn btn-primary" >Cancel</button></a>
</form>
Run Code Online (Sandbox Code Playgroud)
然后:
jQuery("form#login").validate({
submitHandler: function(form) {
$("#loading").modal();
form.submit();
}
});
Run Code Online (Sandbox Code Playgroud)
单击登录按钮时,表单将按预期进行验证.但是,表单也会在单击表单中的两个按钮之一时进行验证.这两个按钮只是链接,我需要它们在表单中,以便我可以连续显示它们.
可以肯定的是,它与validate()触发:提交,即表单中的任何按钮.我怎么能告诉它只在实际点击提交按钮时验证?
我的脚本javascript是这样的:
email: {
required: true,
email: true
},
Run Code Online (Sandbox Code Playgroud)
在文本字段中的电子邮件中,我写了:chelsea@gmail没有.com,它是有效的。
有什么解决方案可以解决我的问题吗?
谢谢