我有一个名为loadData()
的函数,它放在$(document).ready()
中。这会调用ASP.NET C#WebMethod
,使用服务器端处理填充.netDataTables
表。
我已在页面顶部添加了一个引导程序面板,其中有一个可点击的区域可折叠并显示.panel-body
。现在,每次单击图标切换面板主体时,我都会通过触发loadData()
方法向服务器发送请求。
这是我的代码:
HTML
<div class="col-lg-4">
<div class="panel panel-default">
<div class="panel-heading">
<div class="panel-title">
Profile
</div>
<span class="pull-right clickable" data-toggle="tooltip" data-original-stitle="Toggle Summary">
<i class="glyphicon glyphicon-chevron-up"></i>
</span>
</div>
<div class="panel-body"></div>
</div>
</div>
的jQuery
$(document).ready(function () {
$('#summary').on('click', '.panel-heading span.clickable', function (e) {
e.preventDefault();
var $this = $(this);
if (!$this.hasClass('panel-collapsed')) {
$this.parents('.panel').find('.panel-body').slideUp();
$this.addClass('panel-collapsed');
$this.find('i').removeClass('glyphicon-chevron-up').addClass('glyphicon-chevron-down');
} else {
$this.parents('.panel').find('.panel-body').slideDown();
$this.removeClass('panel-collapsed');
$this.find('i').removeClass('glyphicon-chevron-down').addClass('glyphicon-chevron-up');
}
oMessageDate.fnAdjustColumnSizing();
});
$('[data-toggle="tooltip"]').tooltip();
LoadData();
});
function LoadData() {
var sender = "<%= ddBICS.SelectedValue %>";
$.ajax({
type: "POST",
url: "Default.aspx/LoadData",
cache: false,
data: JSON.stringify({
sender: sender
}),
contentType: "application/json; charset=utf-8",
dataType: "json",
error: function (xhr) {
var contentType = xhr.getResponseHeader("Content-Type");
if (xhr.status === 401 && contentType.toLowerCase().indexOf("text/html") >= 0) {
window.location.reload();
}
},
success: function (msg) {
}
});
}
如何在不启动loadData()
的情况下触发切换?