Javascript jQuery Mobile动态更改按钮颜色

Javascript jQuery Mobile动态更改按钮颜色,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,我有一个动态生成的按钮列表 var output=""; var active; var x; var i; var user_id=localStorage.get('user_id');# for(x=0;x<dynamic_count;x++) { output+="<div class='tbl' data-role='button' data-table_id='"+(x+1)+"'>"; output+="<p class='center_t

我有一个动态生成的按钮列表

var output="";
var active;
var x;
var i;
var user_id=localStorage.get('user_id');#

for(x=0;x<dynamic_count;x++)
{
    output+="<div class='tbl' data-role='button' data-table_id='"+(x+1)+"'>";
    output+="<p class='center_text'>"+(x+1)+</p>";
    output+="<div>";
}

$('.table_holder').html(output).trigger('create');

//active and active_count come from AJAX request (I have missed this bit our of the code..active[0]=a table number where as active[1]= s user_id

for(i=0;i<active_count;i++)
{
    if(active[1]==user_id)
    {
        $('.tbl').find("[data-table_id='"+active[0]+"']").css('backgroundColor', 'red');
    }
}
var输出=”;
var活跃;
var x;
var i;
var user_id=localStorage.get('user_id')#
对于(x=0;x试试这个

$('.tbl').find("[data-table_id='"+active[0]+"']").css('background-color', 'red');
您正在尝试像这样指定背景色

$('.tbl').find("[data-table_id='"+active[0]+"']").css('backgroundColor', 'red');

在jquery中,您需要使用背景色而不是背景色。首先,创建一个自定义类,例如
。自定义类

var buttons = $(document).find('a[data-table_id]');

$.each(buttons, function () {
 $(this).removeClass('custom-class');
 if ($(this).attr('data-table_id') == user_id) {
  $(this).addClass('custom-class');
 }
});
CSS:请注意,
!important
是覆盖JQM默认样式的关键

.custom-class { background-color: red !important; }
代码:

查找具有
[data-table\u id]
属性的所有按钮,比较值并应用
。自定义类

var buttons = $(document).find('a[data-table_id]');

$.each(buttons, function () {
 $(this).removeClass('custom-class');
 if ($(this).attr('data-table_id') == user_id) {
  $(this).addClass('custom-class');
 }
});


不幸的是,这没有效果-我相信问题在于jQuery mobile添加到HTML5的方式。你想要这样的东西吗?活动按钮的样式不同。谢谢,这很有帮助。:)