1

我为我的整个对象下线创建了编辑器和显示模板。

现在,内部对象的文本框之一应该是日期选择器。

问题是它是在使用 初始加载后加载的Ajax,并且包含的​​脚本不起作用。

我试图在模板底部包含以下脚本,脚本呈现但什么也不做:

@Styles.Render("~/Content/themes/base/css")
@Scripts.Render("~/bundles/jquerytimepicker")

<script type="text/javascript">
  alert('dddddddddddddddddddddddddd');
  $('.time-picker').timepicker();
</script>

在上面的代码中,我还添加了一个虚拟警报,以证明脚本没有运行,这使问题变得更加简单:“如何从模板和部分视图运行脚本?”。

我试图将脚本包含在外部页面中定义的部分中,但这不起作用,因为模板和部分视图不能按设计包含部分(阅读此内容)。

4

1 回答 1

1

它不起作用,因为将时间选择器附加到 html 的 js 在 document.ready 处运行,但是通过 ajax 加载的内容是在 document.ready 之后加载的

所以需要在ajax请求完成后再次调用附加timepicker的方法

你可以试试这个:

$(document).ajaxComplete(function(event, xhr, settings) {
    alert('an ajax request completed');
    $('.time-picker').timepicker();
});
于 2013-05-03T21:24:40.273 回答