0
我有以下.change()
功能:使用jQuery變函數問題
$('#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
選擇隱藏對應insightsgraphs
類的所有的div和刪除綠色類的所有它的投入。當我選擇四個選項之一,我有一切工作就像它應該,但如果我選擇另一個點擊按鈕不會變成綠色,也不會顯示div。它不運行此一段腳本:
$("#newLikes").on('click', function(){
$(this).toggleClass('green');
$('#dailyNewLikes').toggle();
return false;
});
應該按鈕的綠色和紅色之間切換,也應該隱藏或顯示DIV。例如,第二個選項的ajax調用正確,但按鈕沒有得到綠色類,並且相應的div未顯示。我的代碼有什麼問題?什麼導致這個問題?另一個奇怪的是,第三個選項工作,但第四個不...
你不應該綁定**事件處理程序中的事件處理程序** – Ian 2013-05-10 14:18:15
Ian說的。嘗試將您的點擊處理程序移動到.change()函數的範圍之外。 – 2013-05-10 14:21:40
感謝您的指導。 :) 有用! – 2013-05-10 14:22:20