我有以下.change()
功能:
$('#accmenu').change(function() {
$(".insightsgraphs div").hide();
$(".insightsoptions input").removeClass("green");
$("#newLikes").one('click', function () {
$.ajax({type:'GET', url: 'newLikes.php', data:$('#ChartsForm').serialize(), success:
function(response) {
var json = response.replace(/"/g,'');
json = "[" + json + "]";
json = json.replace(/'/g,'"');
var myData = JSON.parse(json);
var myChart = new JSChart('dailyNewLikes', 'line');
myChart.setDataArray(myData);
myChart.setSize(960, 320);
myChart.setAxisNameX('');
myChart.setAxisValuesColorX('#FFFFFF');
myChart.setAxisNameY('');
myChart.setTitle('Daily New Likes');
myChart.draw();
}});
return false;
});
$("#newLikes").on('click', function(){
$(this).toggleClass('green');
$('#dailyNewLikes').toggle();
return false;
});
$("#unlikes").one('click', function () {
$.ajax({type:'GET', url: 'unlikes.php', data:$('#ChartsForm').serialize(), success:
function(response) {
alert(response);
$("#dailyUnlikes").html(response);
}});
return false;
});
$("#unlikes").on('click', function(){
$(this).toggleClass('green');
$('#dailyUnlikes').toggle();
return false;
});
});
任何时候我从accmenu
选择中更改选项以隐藏与类对应的所有 divinsightsgraphs
并从它的所有输入中删除绿色类。在我选择了四个选项之一后,一切正常,但是如果我选择另一个选项,则单击按钮将不会变为绿色,并且 div 也不会显示。它不运行这段脚本:
$("#newLikes").on('click', function(){
$(this).toggleClass('green');
$('#dailyNewLikes').toggle();
return false;
});
这应该在按钮的绿色和红色之间切换,并且它应该隐藏或显示 div。例如,对于第二个选项,ajax 调用是正确的,但是按钮没有获得绿色类,并且没有显示相应的 div。我的代码有什么问题?是什么导致了这个问题?另一个奇怪的事情是,第 3 个选项有效,但第 4 个选项无效...