一旦条件满足并执行,我在下面有一个名为daterange
的函数,即使参数值不等于" date"它也会继续运行。
我还尝试使用return退出该功能,但它仍在运行。
的Javascript
$(document).ready(function(e) {
$('.search-panel .dropdown-menu').find('a').click(function(e) {
e.preventDefault();
var param = $(this).attr("href").replace("#", "");
var concept = $(this).text();
$('.search-panel span#search_concept').text(concept);
$('[id$=hdnSearchParam]').val(param);
if (param == "date") {
$(function daterange() {
$("#<%= txtsearch.ClientID %>").daterangepicker({
locale: {
format: 'DD/MMM/YYYY'
}
});
});
} else {
return false;
}
});
});
//Re-Create for on page postbacks
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function daterange() {
$('.search-panel .dropdown-menu').find('a').click(function(e) {
e.preventDefault();
var param = $(this).attr("href").replace("#", "");
var concept = $(this).text();
$('.search-panel span#search_concept').text(concept);
$('[id$=hdnSearchParam]').val(param);
if (param == "date") {
$(function() {
$("#<%= txtsearch.ClientID %>").daterangepicker({
locale: {
format: 'DD/MMM/YYYY'
}
});
});
} else {
return false;
}
});
});
有什么想法吗?
答案 0 :(得分:0)
我认为最好在一个单独的函数中隔离daterangepicker的初始化
function initDateRange()
{
$("#<%= txtsearch.ClientID %>").daterangepicker({
locale: { format: 'DD/MMM/YYYY' }
});
}
并将其命名为
$(document).ready(function(e) {
$('.search-panel .dropdown-menu').find('a').click(function(e) {
e.preventDefault();
var param = $(this).attr("href").replace("#", "");
var concept = $(this).text();
$('.search-panel span#search_concept').text(concept);
$('[id$=hdnSearchParam]').val(param);
if (param == "date") {
initDateRange();
} else {
return false;
}
});
});
//Re-Create for on page postbacks
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_endRequest(function daterange() {
$('.search-panel .dropdown-menu').find('a').click(function(e) {
e.preventDefault();
var param = $(this).attr("href").replace("#", "");
var concept = $(this).text();
$('.search-panel span#search_concept').text(concept);
$('[id$=hdnSearchParam]').val(param);
if (param == "date") {
initDateRange();
} else {
return false;
}
});