Asp.net mvc 4 重新加载局部视图工具提示失败后,Bootstrap 3 MVC4 Razor
如果我的工具提示不是HTML格式,则在部分重新加载后,它将成为无格式的标准工具提示。但是如果我把它放在HTML模式下,它会完全消失 我所有的Javascript都在主视图中,我已经尝试了一些东西,事实上很多。但现在我们需要退后一步,寻求建议 这是定义分部的HTML,这个DIV是一个更大的细节视图的一部分,但为了简洁起见,我只展示了相关的代码Asp.net mvc 4 重新加载局部视图工具提示失败后,Bootstrap 3 MVC4 Razor,asp.net-mvc-4,razor,twitter-bootstrap-3,Asp.net Mvc 4,Razor,Twitter Bootstrap 3,如果我的工具提示不是HTML格式,则在部分重新加载后,它将成为无格式的标准工具提示。但是如果我把它放在HTML模式下,它会完全消失 我所有的Javascript都在主视图中,我已经尝试了一些东西,事实上很多。但现在我们需要退后一步,寻求建议 这是定义分部的HTML,这个DIV是一个更大的细节视图的一部分,但为了简洁起见,我只展示了相关的代码 <div class="modal fade" id="PricingTool" role="dialog"> <div clas
<div class="modal fade" id="PricingTool" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h4>
Premise @Model.Premise.CoreSPID is @ViewData["MeteredStatus"] & contains <span class="badge">@Model.Premise.SupplyPoints.Count()</span> Spid(s)
</h4>
<div class="row">
<div class="col-md-4">
From <input type="text" value="@String.Format("{0:dd/MM/yyyy}", DateTime.Now.AddYears(-1))" id="from" class="datepicker">
</div>
<div class="col-md-4">
To <input type="text" value="@String.Format("{0:dd/MM/yyyy}", DateTime.Now.AddDays(-1))" id="to" class="datepicker">
</div>
</div>
</div>
<div id="LoadingGif"></div>
<div id="ResultsList" style="clear:both;">
@{Html.RenderPartial("_DetailsPricing", Model.Premise);}
</div>
<div class="modal-footer">
<a class="btn btn-primary" id="RefreshBtn">Re-Calculate</a>
<a class="btn btn-default" data-dismiss="modal">Close</a>
</div>
</div>
</div>
</div>
&时代;
Premise@Model.Premise.CoreSPID是@ViewData[“MeteredStatus”]&包含@Model.Premise.SupplyPoints.Count()Spid
从…起
到
@{Html.RenderPartial(“_DetailsPricing”,Model.Premise);}
重新计算
接近
以下是主视图中的JavaScript:
$(document).ready(function () {
$("[rel=show-tooltip]").tooltip({ html: true });
$(".datepicker").datepicker({ dateFormat: "dd/mm/yy" });
//$("#myTable").hide();
$("#pager").hide();
function Init() {
if ($("#myTable").find("tr").size() > 1) {
$("#myTable").tablesorter({ dateFormat: "uk", widgets: ['zebra'], sortList: [[2, 0]] }).tablesorterPager({ container: $("#pager") });
} else {
$("#myTable").hide(); $("#pager").hide();
}
return false;
};
$('.show-tooltip').each(function (e) {
var p = $(this).parent();
if (p.is('td')) {
/* if your tooltip is on a <td>, transfer <td>'s padding to wrapper */
$(this).css('padding', p.css('padding'));
p.css('padding', '0 0');
}
$(this).tooltip({
toggle: 'toolip',
placement: 'bottom'
});
});
$("#RefreshBtn").click(function () {
ReloadPartial();
});
function ReloadPartial() {
var url = '/SupplyPoint/PricingUpdate';
var data = {
StartDate: $('#from').val(),
EndDate: $('#to').val(),
SupplyPointId: $('#SupplyPointId').val().toString()
};
$("#ResultsList").load(url, data, function () {
$('#LoadingGif').empty();
});
$('#LoadingGif').empty().html('<img src="/Content/images/ajax-loader.gif" width=31 height=31 alt="Loading image" />');
return false;
};
});
$(文档).ready(函数(){
$(“[rel=显示工具提示]”)。工具提示({html:true});
$(“.datepicker”).datepicker({dateFormat:“dd/mm/yy”});
//$(“#myTable”).hide();
$(“#寻呼机”).hide();
函数Init(){
if($(“#myTable”).find(“tr”).size()>1){
$(“#myTable”).tablesorter({dateFormat:“uk”,小部件:['zebra',分类列表:[[2,0]});
}否则{
$(“#myTable”).hide();$(“#pager”).hide();
}
返回false;
};
$('.show tooltip')。每个(函数(e){
var p=$(this.parent();
如果(p.is('td')){
/*如果您的工具提示位于上,请将的填充转移到包装器*/
$(this.css('padding',p.css('padding'));
p、 css('padding','0');
}
$(此)。工具提示({
切换:“工具IP”,
位置:'底部'
});
});
$(“#刷新BTN”)。单击(函数(){
重载部分();
});
函数重载部分(){
var url='/SupplyPoint/PricingUpdate';
风险值数据={
起始日期:$('#from').val(),
结束日期:$('#to').val(),
SupplyPointId:$('#SupplyPointId').val().toString()
};
$(“#结果列表”).load(url、数据、函数(){
$('#LoadingGif').empty();
});
$('#LoadingGif').empty().html('');
返回false;
};
});
最后-这里是从显示工具提示的部分cshtml中提取的代码。我把其余的都漏掉了,因为它不相关,只是循环传入的模型,这里还没有Javascript。这里有一个部分完美地显示了工具提示——尽管是在重新加载丢失的工具后
<div class="show-tooltip" data-html="true" data-original-title="@pricing.VolumetricChargeWorking">
<div>£@Html.DisplayFor(modelItem => pricing.VolumetricCharge)</div>
&磅@DisplayFor(modelItem=>pricing.VolumetricCharge)
只需将此代码从主视图放到局部视图中即可:
$("[rel=show-tooltip]").tooltip({ html: true });
这样,每次渲染部分时,它都会初始化工具提示。当我尝试此操作时,我得到相同的结果,它只在第一次使用时才起作用。你的建议对我来说很有意义-谢谢,但我不确定为什么它不起作用,请在你的部分中尝试:$(“.show tooltip”).tooltip({html:true});如果我在主视图中的reloadparticle()函数末尾添加Javascript警报,它会修复问题。但我的应用程序中不能有警报解决方案:请参阅