我認爲這一切都歸結爲語法問題。我不知道如何在addItem()函數中正確設置li項目的id屬性。設置屬性並在自調用jQuery函數中傳遞參數
如果我在addItem()函數(它是在點擊函數中定義的)中刪除了「ths」參數,那麼爲動態創建的列表項正確設置了id屬性。如果我傳遞了參數,該函數會成功觸發,但它不會爲列表項設置ID。它只是創建一個沒有ID的列表項。
雖然保持在我有下面的格式,如何正確設置動態創建的列表項的ID傳遞參數的函數?
我可以做這樣的事情:
$('<li>'+ths+'</li>').attr('id', 'foo'+i).attr('class', 'bar'); i++;
但是,這並不遵循模型我有以下的語法。這也不是很有效。
(function() {
var i = 1;
var addContainer = {
init: function() {
$('<li></li>', {
id: "today"
}).prependTo('#myDiv');
},
addItem: function (ths) {
$('<li>' + ths + '</li>', {
id: 'newItem' + i
}).prependTo('#orderList');
i++
}
};
$('body').on('click', '.itemRow', function() {
var ths = $(this).children('.itemTitle').text();
if ($('today').length >= 0) {
addTodaysOrders.addOrder(ths);
}
});
})();
此代碼只是一個簡短的概述,以獲得點....它缺少一些片斷。但是這裏的重要部分只是在這種格式中設置id的語法。
請訪問http://jsbeautifier.org – 2012-04-16 18:21:01
'$('today')'今天是代碼中的標記。 – noob 2012-04-16 18:23:46
現在已經「美化」了 – Alex 2012-04-16 18:24:48