Is there anyway to get access to the settings in the success callback?
$('.chartsRefresher').change(
function(){
$.ajax({
url: "/CampaignReportPostHandler.jsp",
data:({
queryPage:$("ul.tabs li.active a").attr("href")
}),
success:function(d)
{
alert(settings);
var dataTest = d.substring(d.indexOf('('));
eval(chartRenderer+"(eval(dataTest))");
}
});
return true;
}
);
I w开发者_开发问答ant to be able to get what the queryPage was when the ajax call was made?
Define your data first:
$('.chartsRefresher').change(
function(){
var data = {
queryPage:$("ul.tabs li.active a").attr("href")
};
$.ajax({
url: "/CampaignReportPostHandler.jsp",
data: data,
success:function(d)
{
alert(data.queryPage);
var dataTest = d.substring(d.indexOf('('));
eval(chartRenderer+"(eval(dataTest))");
}
});
return true;
}
);
And as mentioned, avoid eval if possible.
Declare them with var
:
$('.chartsRefresher').change(function() {
var ajaxOpts= {
url: "/CampaignReportPostHandler.jsp",
data: { /* remove the parentheses around this object */
queryPage: $("ul.tabs li.active a").attr("href")
},
success: function(d) {
var queryPage = ajaxOpts.data.queryPage;
var dataTest = d.substring(d.indexOf('('));
eval(chartRenderer + "(eval(dataTest))");
}
};
$.ajax(ajaxOpts);
return true;
});
Side question: why are you using eval?
精彩评论