2013-05-07 83 views
1

如何使用此代碼獲取所選班級的li-item?在「ul」中獲取所選班級

現在它循環ul中的所有類,而不僅僅是選中的。

$('<div id="chooseCustomFields' 
    + field_id 
    + '" class="wrapper-customfields" tabindex="1"><span>Choose Type</span>' 
    + '<ul id="chooseCustomField' 
    + field_id 
    + '" class="dropdown">' 
    + '<li class="chooseCheckbox"><i class="fa-icon-check"></i>Checkbox</li>' 
    + '<li class="chooseAlternatives"><i class="fa-icon-list-ul"></i> Alternatives</li>' 
    + '<li class="chooseDropdown"><i class="fa-icon-list-alt"></i> Dropdown</li>' 
    + '<li class="chooseTextField"><i class="fa-icon-font"></i> Text</li>' 
    + '</ul></div>').appendTo(field_secondchild).addClass("metro three-d") 
.click(function() { 
$('#chooseCustomField' + field_id + ' li').each(function() { 
    alert($(this).attr('class')) 
}); 
}); 
+0

你想點擊的'li' – 2013-05-07 13:54:12

+0

是的,我正在努力尋找這個問題ked'li' – Kim 2013-05-07 13:55:48

回答

1

看起來你想要的點擊li

$('<div id="chooseCustomFields' 
    + field_id 
    + '" class="wrapper-customfields" tabindex="1"><span>Choose Type</span>' 
    + '<ul id="chooseCustomField' 
    + field_id 
    + '" class="dropdown">' 
    + '<li class="chooseCheckbox"><i class="fa-icon-check"></i>Checkbox</li>' 
    + '<li class="chooseAlternatives"><i class="fa-icon-list-ul"></i> Alternatives</li>' 
    + '<li class="chooseDropdown"><i class="fa-icon-list-alt"></i> Dropdown</li>' 
    + '<li class="chooseTextField"><i class="fa-icon-font"></i> Text</li>' 
    + '</ul></div>').appendTo(field_secondchild).addClass("metro three-d") 
.on('click', 'li', function() { 
    alert($(this).attr('class')) 
}); 
+0

現貨!謝謝! – Kim 2013-05-07 13:57:57

0

你的HTML格式不,因爲它是,所以我固定的,然後我分開的HTML和JS,所以我們可以看到這種實際工作。

這裏是工作提琴:
http://jsfiddle.net/acturbo/LmXz4/1/

的javascript:

var field_id = "#chooseCustomField" + "555"; 
var field_secondchild = "#secondchild"; 

// new logic 
$(field_id).appendTo(field_secondchild).addClass("metro three-d"); 

// easier way to assign a click event to each li 
$(field_id + ' li').on("click", function() { 
    alert($(this).attr('class')) 
}); 

HTML(需要測試)

<div id="secondchild"> 
    <p>for testing only</p> 
</div> 
<div> 
    <p>should be last</p> 
</div> 

<div id="chooseCustomFields555" class="wrapper-customfields" tabindex="1"> 
    <span>Choose Type</span> 
    <ul id="chooseCustomField555" class="dropdown"> 
    <li class="chooseCheckbox"><i class="fa-icon-check"></i>Checkbox</li> 
    <li class="chooseAlternatives"><i class="fa-icon-list-ul"></i> Alternatives</li> 
    <li class="chooseDropdown"><i class="fa-icon-list-alt"></i> Dropdown</li> 
    <li class="chooseTextField"><i class="fa-icon-font"></i> Text</li> 
    </ul> 
</div>