我有一个弹出的对话框,使用jQuery加载函数加载其内容 . 在那个ajax加载的页面上有一个jQuery UI datepicker,在我传递给视图的Model中,我有MinDate和MaxDate属性,用于设置datepicker的最小和最大日期 . 在非ajax页面上,我通常会这样做:
<script type="text/javascript">
$(function () {
var model = @(Model.ToJson());
$('.date').datepicker('option', 'minDate', new Date(parseInt(model.MinDate.substr(6))));
$('.date').datepicker('option', 'maxDate', new Date(parseInt(model.MaxDate.substr(6))));
});
</script>
问题是,如果我在从jQuery加载函数加载的视图中包含任何javascript,它将被删除并且不会被执行 . 所以,如果我包含上面的代码来指定对话框表单中的datepicker的最小和最大日期不起作用 .
如何指定jQuery UI datepicker的最小和最大日期,其中datepicker是通过ajax加载的,而min和max日期来自模型?
2 回答
您可以将这两个模型属性序列化为DOM中某处的HTML5 data- *属性 . 例如,作为datepicker本身的一部分,它会很棒:
然后定义一些功能:
然后在DOM准备中调用此函数:
以及在你的AJAX成功回调中,以便重新附加它们 .