malihehshajari
دوشنبه 27 بهمن 1393, 11:41 صبح
سلام من میخوام توی صفحه یک سری تب داشته باشم و روی هر کدوم کلیک میشه یک قسمت نمایش داده بشه که محتوای یکی از این تب ها نمودار هستش
ولی این دوتا در کنار هم فقط نمایش تب کار میکنه و نمودار نشون داده نمیشه در صورتیکه تک تک که باشن هر کدوم به تنهایی اجرا میشن
میشه راهنمایی کنید چطور همزمان هر دو رو داشته باشم
با تشکر
Freedon_23
دوشنبه 27 بهمن 1393, 22:49 عصر
سلام
به احتمال زیاد کدهای جی کوئری تب شما و نموداربا هم conflict دارند اگر می تونید کدهای هر دو قسمت رو بدید تا شاید تونستم مشکل رو پیدا کنم.
این آوزش رو بخونید اگر حل نشد کدهای هر دوقست رو بدید تا بررسی کنم.
noConflict در جی کوئری (http://www.webreference.ir/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C/jquery/88-jquery-5.html)موفق باشید
malihehshajari
شنبه 02 اسفند 1393, 12:26 عصر
سلام
به احتمال زیاد کدهای جی کوئری تب شما و نموداربا هم conflict دارند اگر می تونید کدهای هر دو قسمت رو بدید تا شاید تونستم مشکل رو پیدا کنم.
این آوزش رو بخونید اگر حل نشد کدهای هر دوقست رو بدید تا بررسی کنم.
noConflict در جی کوئری (http://www.webreference.ir/%D8%A2%D9%85%D9%88%D8%B2%D8%B4-%D8%A8%D8%B1%D9%86%D8%A7%D9%85%D9%87-%D9%86%D9%88%DB%8C%D8%B3%DB%8C/jquery/88-jquery-5.html)
موفق باشید
سلام اول تشکر بابت پاسختون کدی که نوشتم :
var web = jQuery.noConflict();
web(document).ready(function(){
//************************************************** *********************************************
$('#search').click(function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: "/chart_1/" ,
data: $('#chart_frm').serialize(),
dataType: 'json',
success: function(data , textStatus, jqXHR){
$('#chart2').html("") ;
$('#chart1').html("") ;
if (data["chart_type"] == "bar" )
{
$.jqplot.config.enablePlugins = true;
var s1 = data["list"] ;
var ticks = data["list_1"] ;
plot1 = $.jqplot('chart1', [s1], {
// Only animate if we're not using excanvas (not in IE 7 or IE 8)..
animate: !$.jqplot.use_excanvas,
seriesDefaults:{
renderer:$.jqplot.BarRenderer,
pointLabels: { show: true }
},
axes: {
xaxis: {
renderer: $.jqplot.CategoryAxisRenderer,
ticks: ticks
}
},
highlighter: { show: false }
});
$('#chart1').bind('jqplotDataClick',
function (ev, seriesIndex, pointIndex, data) {
$('#info1').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data);
}
);
s1 = data["list_2"] ;
plot1 = $.jqplot('chart2', [s1], {
// Only animate if we're not using excanvas (not in IE 7 or IE 8)..
animate: !$.jqplot.use_excanvas,
seriesDefaults:{
renderer:$.jqplot.BarRenderer,
pointLabels: { show: true }
},
axes: {
xaxis: {
renderer: $.jqplot.CategoryAxisRenderer,
ticks: ticks
}
},
highlighter: { show: false }
});
$('#chart2').bind('jqplotDataClick',
function (ev, seriesIndex, pointIndex, data) {
$('#info1').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data);
}
);
}
else
{
$.jqplot.config.enablePlugins = true;
var s1 = data["list"] ;
var ticks = data["list_1"] ;
plot1 = $.jqplot('chart1', [s1] ,
{seriesDefaults:{renderer:$.jqplot.PieRenderer ,
rendererOptions: {
// Put data labels on the pie slices.
// By default, labels show the percentage of the slice.
showDataLabels: true ,
dataLabels: ticks ,
}
}});
$('#chart1').bind('jqplotDataClick',
function (ev, seriesIndex, pointIndex, data) {
$('#info1').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data);
}
);
s1 = data["list_2"] ;
plot1 = $.jqplot('chart2', [s1] ,
{seriesDefaults:{renderer:$.jqplot.PieRenderer ,
rendererOptions: {
// Put data labels on the pie slices.
// By default, labels show the percentage of the slice.
showDataLabels: true ,
dataLabels: ticks ,
}
}});
$('#chart2').bind('jqplotDataClick',
function (ev, seriesIndex, pointIndex, data) {
$('#info1').html('series: '+seriesIndex+', point: '+pointIndex+', data: '+data);
}
);
$( "#draggable" ).draggable();
}
},
error: function(jqXHR, textStatus, errorThrown){
if (errorThrown != "")
{alert(errorThrown); }
}
});
});
$( "#tabs" ).tabs();
});
//************************************************** ************************************************** *********
ولی فقط کد tab کار میکنه و نمودار رسم نمیشه
Freedon_23
یک شنبه 03 اسفند 1393, 11:29 صبح
مسلما مشکل شما تداخل بین این دو پلاگین هست که احتمال زیاد هر دو از علامت $ برای دستورات استفاده کردند.
شما ابتدای کد از تابع noConflict استفاده نکنید و در کدهایی که توی پست گذاشتید تو همه دستورات از jQuery به جای $ استفاده کنید حتی اول کدتون که از web استفاده کردید به جای اون هم jQuery بذارید و تابع noConflict رو حذف کنید.
اگر جواب نداد برای قسمت تب از noConflict استفاده کنید مثلا:
var web = jQuery.noConflict();
web( "#tabs" ).tabs();
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.