我有一个动态生成的列表。
当我点击一行时,我想要切换背景颜色,比如说,-red green yellow。当id不是动态的时候我已经看到了答案。
<ul data-role="listview" id="my-listview" >
<c:forEach var="line" items="${tl.reqs}">
<li id="lnk"><a href="#" onclick= '
$(this).toggle(function(){
$(this).css("background-color","green");},
function(){
$(this).css("background-color","red");},
function(){
$(this).css("background-color","yellow");}
);'
${line.name}</a>
</li>
</c:forEach>
答案 0 :(得分:1)
在您的链接中添加ID(或类):
<a href="#" id="myLink">Test</a>
jQuery的:
$('#myLink').click(function() {
var color = $(this).css("background-color");
console.log(color);
switch(color) {
case 'rgb(255, 255, 0)':
$(this).css("background-color", "green");
break;
case 'rgb(0, 128, 0)':
$(this).css("background-color", "red");
break;
case 'rgb(255, 0, 0)':
default:
$(this).css("background-color", "yellow");
break;
}
return false;
});