我试图将我的datepicker中的值转换为一个新脚本,该脚本应该验证来自datepicker的第二个选择值是否不在第一个选择的datepicker之前。
但是,我的脚本不会执行。
这是我的观点:
<div class="editor-field">
@Html.TextBox("PlannedDate", Model.PlannedDate, new { @class = "date", @readonly = "readonly" })
@Html.TextBox("CompletedDate", Model.CompletedDate, new { @class = "date", @readonly = "readonly" })
@Html.ValidationMessageFor(model => model.CompanyName)
</div>
<input id="submitfloat" type="submit" value="Go" />
这是我的剧本
<script>
$(".date").datepicker();
$('#submitfloat').submit(function() {
var fromDate = $('#PlannedDate').val();
var EndDate = $('#CompletedDate').val();
if (Date.parse(fromDate) > Date.parse(EndDate)) {
alert("Date error")
}
return false;
});
然而,当我开始调试ut Firebug时,似乎我的行$('#submitfloat').submit(function() {
不会执行。
任何人都知道我的问题是什么以及如何解决?提前致谢
答案 0 :(得分:2)
我的第一个答案,我希望它可以帮到你。
首先我的观点:
<script src="Js/jquery.min.js" type="text/javascript"></script>
<script src="Js/jquery.validate.min.js" type="text/javascript"></script>
<script src="Js/jquery-ui-1.8.18.custom.min.js" type="text/javascript"></script>
<link href="Css/start/jquery-ui-1.8.18.custom.css" rel="stylesheet" type="text/css" />
我将其用于日期选择器和验证
<form id="custom" action="">
<input type="text" id="fechaLlegada" name="fechaL" style="color: #4080BF; font: bold 12px verdana; padding: 0 2px 3px 2px;"/>
<input type="text" id="fechaSalida" name="fechaS" style="color: #4080BF; font: bold 12px verdana; padding: 0 2px 3px 2px;"/>
<br />
<input type="submit"/>
</form>
现在是脚本
<script type="text/javascript">
jQuery.validator.addMethod("isValid", function (value, element) {
var startDate = $('#fechaLlegada').val();
var finDate = $('#fechaSalida').val();
return Date.parse(startDate) < Date.parse(finDate);
}, "* End date must be after start date");
$(function () {
$('#fechaLlegada,#fechaSalida').datepicker()
$('#custom').validate({
rules: {
'fechaL': { required: true, date: true },
'fechaS': { required: true, date: true, isValid: true }
}, messages: {
'fechaL': { required: 'date required msj!',
date: 'invalid date format msj'
},
'fechaS': { required: 'date required msj!',
date: 'invalid date format msj',
isValid: 'End date must be after start date'
}
}
});
});
</script>
我为jquery验证了一个方法验证日期验证然后我在验证脚本中使用它作为规则
this is working for me, i hope it helps someone