Javascript jQuery验证程序不工作
我已经为我的网站添加了jQuery验证,用于上传广告文件。。 我不知道为什么,但这不起作用 HTML文件如下所示:Javascript jQuery验证程序不工作,javascript,jquery,jquery-validate,Javascript,Jquery,Jquery Validate,我已经为我的网站添加了jQuery验证,用于上传广告文件。。 我不知道为什么,但这不起作用 HTML文件如下所示: <form enctype="multipart/form-data" action="upload_data.jsp" id="formToPushAd" method="post"> <table> <tr> <td width="100px">Ad Image:</td&
<form enctype="multipart/form-data" action="upload_data.jsp" id="formToPushAd" method="post">
<table>
<tr>
<td width="100px">Ad Image:</td>
<td><input type="file" name="file"/></td>
</tr>
<tr>
<td width="100px">Ad URL:</td>
<td><input type="text" name="adUrl"/></td>
</tr>
<tr>
<td>Starting Date:</td>
<td><input type="text" id="datepicker1" name="datepicker1" /></td>
</tr>
<tr>
<td>Ending Date:</td>
<td><input type="text" id="datepicker2" name="datepicker2" onchange="dateSelected()"/></td>
</tr>
<tr>
<td><input type="submit"/></td>
问题是什么?我认为您没有包括
jQuery
和validate
库,因为当您将它们添加到标题中时,它可以正常工作
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js"></script>
广告图片:
广告网址:
开始日期:
截止日期:
将$().ready(function()更改为$(document).ready(function())并确保页面上包含了插件文件和jquery.min文件。您应该在表单上使用onsubmit
来验证数据。您还应该调用e.preventDefault()
,这将防止表单多次触发
演示:
广告图片:
广告网址:
开始日期:
截止日期:
功能验证数据(e){
e、 预防默认值();
规则:{
文件:{
必填项:true
},
阿杜尔:{
要求:正确,
网址:true
},
日期选择器1:{
要求:正确,
日期:对
},
日期选择器2:{
要求:正确,
日期:对,
}
},
消息:{
文件:{
必需:“请选择一个频率”
},
阿杜尔:{
必填:“请输入广告url”
},
日期选择器1:{
必填:“请输入日期”,
日期:“请输入有效日期”
},
日期选择器2:{
必填:“请输入日期”,
日期:“请输入有效日期”
}
}
}
那么问题出在哪里???控制台中出错?等等…我想替换这个标记…datepicker2:{required:true,date:true}.validate函数找不到“.validate()
函数找不到”这意味着您未能正确地包含插件。否则,您的代码将正常工作:谢谢您的帮助。虽然这两种语法都有效,但将其绑定到文档是首选方法,我为它们提供了正确的方法,不确定需要验证什么,所以这是灵活的,我在这里说的是Submit,我们可以称为f函数中,提供一个e.preventDefualt(),该函数将阻止它执行多次,然后验证它们想要执行的操作。OP专门询问如何使用。您只需粘贴包含用于.validate()的规则和选项的对象文本
方法转换为JavaScript函数。您还使用了内联JavaScript,这在使用jQuery时是不必要的。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8.1/jquery.validate.min.js"></script>
<form enctype="multipart/form-data" action="#" id="formToPushAd" method="post" onsubmit="validateData(event)">
<table>
<tr>
<td width="100px">Ad Image:</td>
<td><input type="file" name="file"/></td>
</tr>
<tr>
<td width="100px">Ad URL:</td>
<td><input type="text" name="adUrl"/></td>
</tr>
<tr>
<td>Starting Date:</td>
<td><input type="text" id="datepicker1" name="datepicker1"/></td>
</tr>
<tr>
<td>Ending Date:</td>
<td><input type="text" id="datepicker2" name="datepicker2" onchange="dateSelected()"/></td>
</tr>
<tr>
<td><input type="submit"/></td>
</tr>
</form>
<script>
function validateData(e){
e.preventDefault();
rules:{
file:{
required:true
},
adUrl:{
required:true,
url:true
},
datepicker1:{
required:true,
date:true
},
datepicker2:{
required:true,
date:true,
}
},
messages:{
file:{
required:"Please Select a frequency"
},
adUrl:{
required:"Please enter ad url"
},
datepicker1:{
required:"Please Enter a date",
date:"Please Enter a valid date"
},
datepicker2:{
required:"Please Enter a date",
date:"Please Enter a valid date"
}
}
}
</script>