嗨,伙计们,我要用这个拔头发了。
我不能让日期选择器JQUERY UI控件响应任何事情,上面的代码显示了警报,但无论我设置了什么值,日期选择器都只是默认设置。在下面的代码中,我只显示了一个月,并且没有设置默认日期:
$(document).ready(function () {
onload:
{
alert(1);
$('#FirstPeriodReconDate').datepicker({ defaultDate: "+1w",
changeMonth: false,
numberOfMonths: 3
});
alert(2);........
作为最后一次尝试,我刚刚升级了JQUERY版本,但还是一样,没有什么区别。在我的应用程序中,我用datepicker设置值,它被广泛使用,一切都很好。这是我第一次需要对控件实例进行任何更改。我已经删除了所有其他JQUERY代码,现在只留下了一个简单的示例,仍然没有任何内容。
这里是我的HTML标记的一个摘录。NB控件可以很好地被引用,表单保存回数据库并显示值等,就像我说的,除了我尝试更改控件属性时,所有操作都正常:
<li>
<label for="FirstPeriodReconDate">
<strong>First Recon Date:</strong>
</label>
<%= Html.TextBox("FirstPeriodReconDate", String.Format("{0:dd/MM/yyyy}",
Model.PaymentFrequency.FirstPeriodRecondate),new{@class=“date”})%><%=HTML.ValidationMessage(“FirstPeriodRecondate”,“*”)%>
有什么建议吗,J
我只是注意到我有全局代码,它包含在我的所有日期字段上运行,这似乎是在我的新代码运行后执行的。还没有弄清楚,但可能需要创建一个新类,这样我就可以在需要的地方有自定义行为。我有一个global.js里面有这样的内容:
$(function(){$('.date').DatePicker({showon:'button',ButtonImage:$(“#AbsolutePath”).Val()+'Content/Images/Control_MonthCalendar.bmp',ButtonText:'Enter Date“,ButtonImageOnly:true,DateFormat:'DD/MM/YY',YearRange:'-20:+50',ChangeMonth:true,ChangeYear:true});............
尝试更改格式,如http://jqueryui.com/demos/datepicker/#options所示。
在html Head中添加以下函数:
<script type="text/javascript">
function changeFormat() {
$("#FirstPeriodReconDate").datepicker("option", "defaultDate", +1 );
$("#FirstPeriodReconDate").datepicker( "option", "changeMonth", true );
$("#FirstPeriodReconDate").datepicker( "option", "numberOfMonths", 5);
}
</script>
并从任何地方调用它,例如:
<input type="button" value="click" onclick="changeFormat()"/>
或者如果要在页面加载时调用它,则:
<body onload="changeFormat()">
...
...
</body>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery UI Datepicker - Format date</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery- ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<script>
$(function() {
$( "#datepicker" ).datepicker();
$( "#format" ).change(function() {
$( "#datepicker" ).datepicker( "option", "dateFormat", $( this ).val() );
});
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker" size="30" /></p>
<p>Format options:<br />
<select id="format">
<option value="mm/dd/yy">Default - mm/dd/yy</option>
<option value="yy-mm-dd">ISO 8601 - yy-mm-dd</option>
<option value="d M, y">Short - d M, y</option>
<option value="d MM, y">Medium - d MM, y</option>
<option value="DD, d MM, yy">Full - DD, d MM, yy</option>
<option value="'day' d 'of' MM 'in the year' yy">With text - 'day' d 'of' MM 'in the year' yy</option>
</select>
</p>