我正在从 Html.TextBoxFor 助手检查使用 jquery 中的 datepicker 控件输入的日期:
<%=Html.TextBoxFor(c => Model.mydate, new { @class = "datepicker", maxlength = 10, @onBlur = "chkDate"})%>
文本框的日期选择器掩码似乎是 MM/DD/YYYY 。因此,我的脚本检查下划线并显示错误。如果用户忽略日期选择器并尝试徒手输入日期,则此方法有效,但如果使用日期选择器则无效。选择日期后,传递给我的脚本的值仍然是下划线并且没有值。这是我的脚本:
<script type="text/javascript">
$(document).on("blur", "input[name=mydate]",
function chkDate() {
var len = $("input[name=mydate]").val().length;
var date = $("input[name=mydate]").val();
var month = date.slice(0, 2);
var day = date.slice(3, 5);
var year = date.slice(6, 10);
alert("chkBirthday " + month);
if (month == '__') {
document.getElementById("MainContent_ErrorMessage").visibility = 'visible';
document.getElementById("MainContent_ErrorMessage").innerHTML = 'No date has been entered. Please enter a date';
}
});
有一个与 datepicker 关联的事件 onChange。这是我应该使用的吗?如果是这样,我如何在我的助手中指定它以及我需要进行哪些脚本更改?