2014-02-05 30 views
1

該JavaScript切換表格行的背景顏色的兩種顏色之間:週期通過對按此

$(document).ready(function(){ 
$("#rowClick").children("tbody").children("tr").children("td").click(function(){ 
    $(this.parentNode).toggleClass("enroute"); 
}); 

});

CSS:

.placed{ 
background: #3498db;} 

.pickedUp{ 
background: #f1c40f;} 

.enroute{ 
background: #2ecc71;} 

我已經在這裏找到了幾個很好的例子:http://jsfiddle.net/pqyxM/5/http://jsfiddle.net/FSFpZ/

但是,我想要的顏色騎自行車通過點擊某行中特定的列被觸發,我需要保存顏色變化。這可能嗎?任何意見都非常感謝。

+0

要保存的顏色在哪裏?服務器或本地(cookie)? –

+0

這並不回答你的問題,但我建議你改變你的代碼到$('#rowClick')on('click','td',function(){});它只創建少量的附加事件,並且還支持添加更多行而無需爲新行重新創建點擊事件的功能。 http://api.jquery.com/on/ – VtoCorleone

+0

我想將顏色保存到服務器。 –

回答

0

不知道這是否是您要查找的內容,但有了額外的代碼,您可以切換類名並將其保存到變量中。

然後你就可以使用這個變量來切換下一個顏色:http://jsfiddle.net/reubenhutton/FSFpZ/55/

var className; 
    $.each(classes, function(key, val){ 
     if($(self).hasClass(val)){ 
      className = val; 
      $(self).removeClass(val); 
     } 
    }) 
+0

您可以將顏色變量保存到服務器嗎?另外,你可以將顏色變化鏈接到行中特定列的點擊(vs行中的任何位置)? –

+0

我正在嘗試將背景顏色更改保存到服務器。任何澄清都會有幫助。謝謝 –

+0

如果您想保存對tr進行的更改,則在控制器中添加方法更容易。 –