我有一个喜欢的HTML,
<form id="create_campaign_form">
<input type="text" name="campaign_name" id="campaign_name" >
</form>
<button id="validate_now" type="button" >OK</button>
我有一个类似于validate.js的jquery,
$.fn.validate_campaign=function(options){
$("#create_campaign_form").validate({
rules: {
campaign_name : "required",
},
messages:{
campaign_name : "Please enter Campaign name",
},
submitHandler: function(form) {
alert(1);
return true;
}
});
$('#validate_now').click(function(){
alert($('#create_campaign_form').valid());
});
}
$(document).ready(function(){
$(this).validate_campaign(); //Invoke on document ready
});
我的问题是,当我在文本框中输入值并点击buttin alert($('#create_campaign_form').valid());
alwaise return false
并且未输入submitHandler
答案 0 :(得分:2)
检查此FIDDLE
您需要提交表单。您的提交按钮应该在您的表单中,否则您必须手动调用表单提交。以下
$('#validate_now').click(function(){
$('#create_campaign_form').submit();
});
如果表单有效,输入您的提交处理程序并提醒1。
答案 1 :(得分:1)
您需要在
等表单中创建提交按钮<form id="create_campaign_form">
<input type="text" name="campaign_name" id="campaign_name" />
<input type="submit" class="button" value="Submit" id="validate_now"/>
</form>
演示:Fiddle
或在按钮单击
中手动调用submit方法<form id="create_campaign_form">
<input type="text" name="campaign_name" id="campaign_name" />
</form>
<input type="button" class="button" value="Submit" id="validate_now"/>
然后
$('#validate_now').click(function () {
$("#create_campaign_form").submit()
});
演示:Fiddle
答案 2 :(得分:1)
将你的按钮html放在表格标签
中<form id="create_campaign_form">
<input type="text" name="campaign_name" id="campaign_name" >
<button id="validate_now" >OK</button>
</form>
默认情况下,任何类型的按钮都是以html5提交的。