2014-09-27 84 views
-1

我想要使用jQuery 1.10.2更改DOM元素(特別是標籤標籤)的類屬性。如何使用jQuery更改多個DOM元素的CSS類?

這裏是我的代碼:

var MyNameSpace = MyNameSpace || {}; 
 
MyNameSpace.enableDisableLabels = (function() { 
 
    var m_labelIds = { 
 
    "bookId": "book", 
 
    "customerId": "customer" 
 
    }; 
 

 
    var mf_getjQueryDOMObjectReperesentation = function(arrayObjIds) { 
 
    var result = {}; 
 
    $.each(arrayObjIds, function(id, value) { 
 
     result[id] = $("#" + value); 
 
    }); 
 
    return result; 
 
    }; 
 

 
    var mf_unBoldLabels = function(arrayjQueryObjLabels) { 
 
    $.each(arrayjQueryObjLabels, function(id, value) { 
 
     value.atrr("class", "outputLabelOpt"); // PROBLEM: TypeError: value.atrr is not a function 
 
    }); 
 
    }; 
 

 
    var arrayjQueryObjLabels = mf_getjQueryDOMObjectReperesentation(m_labelIds); 
 
    mf_unBoldLabels(arrayjQueryObjLabels); 
 

 
}());
.outputLabelOpt { 
 
    color: #0B63CA; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script> 
 

 
<body> 
 
    <label id="book" style="font-weight:bold">book</label> 
 
    <label id="customer" style="font-weight:bold">customer</label> 
 
</body>

但我得到一個錯誤:
類型錯誤:value.atrr不是一個函數

你能請告知我是什麼做錯了,以及如何正確地做到這一點。
非常感謝任何形式的幫助。

謝謝你在前進,
mismas

+1

你有一個錯字;它是'attr()',而不是'atrr()'。 – 2014-09-27 16:38:54

+0

我不明白爲什麼我被拒絕投票支持這個問題?這是我所有的工作。問題是輸入錯誤,但這個問題也許可以幫助某人(初學者),例如如何用jQuery爲多個DOM元素調用css類。我不太明白這裏有什麼違反規則的事情?請解釋一下你自己...... – mismas 2014-09-28 10:25:45

回答

3

只是一個錯字:它不是atrr,但attr ;-)

+0

你真是太棒了!我的眼睛今天很疲倦:) – mismas 2014-09-27 17:13:11

+0

我不明白爲什麼我投下了這個問題呢? – mismas 2014-09-27 17:24:40

1

這是value.attr.atrr

對於class屬性操作,您還有.addClass("classname").removeClass("classname")

+1

實際上,在這裏,數組的值真的是jQuery對象: 'result [id] = $(「#」+ value);',所以這不是問題;-) – laruiss 2014-09-27 16:45:00

相關問題