我遇到了问题而且不知道如何修复它。 A有以下js脚本:
$(function () {
$.ajaxSetup({ cache: false });
var timer = window.setTimeout(function () {
$(".alert").fadeTo(1000).slideUp(1000, function () {
$(this).hide();
});
}, 3000);
$(document).on("click", "[data-hide]", function () {
if (timer != null) {
clearTimeout(timer);
$(this).closest("." + $(this).attr("data-hide")).hide();
}
});
});
<div class="well">
<h3>
<strong>@Model.Name</strong>
<span class="pull-right label label-primary">@Model.AverageRaiting.ToString("# stars")</span>
</h3>
<span class="lead">@Model.Description</span>
@Html.DialogFormLink("Update", Url.Action("UpdatePhoto", new {id = @Model.PhotoId}), "Update Photo", Url.Action("Photo"))
@Html.Action("InitializeAlerts")//When this action is executing the document was already ready (by the first time when full page was loading), so I have no chanse to catch any .alerts in js alert file after updating this partial for another one.
</div>
有时候我的文件比我在部分视图中有任何.alert
类更准备好了。那么,在使用有效.alert
?
答案 0 :(得分:2)
您需要等待select or count (or select top) the records
where collection_date_user < return_date_in_db
and return_date_user > collection_date_in_db
首先存在,或者您需要在加载处理中添加代码。
如果你不想紧紧地连接你的JS文件,你可以播放一个&#34;面板加载&#34;来自其他脚本的事件,您在文档级别捕获。
e.g。
$(",alert")
并听取通用&#34;面板加载&#34;主要活动:
e.g。
$.ajax({...}).done(function(loadedhtml){
$somepanel.html(loadedhtml);
$(document).trigger("panelloaded", $somepanel);
});
答案 1 :(得分:0)
如果您重新加载部分视图,我认为最好将代码放在.ajaxComplete()
函数中。
在你的ajax请求完成后,它将准备就绪。