UL>李>复选框> HREF

时间:2012-08-15 11:36:52

标签: jquery

如何获取标记为links,属性href =“”和文本链接的值。我为我的英语道歉。谢谢。

<ul id="list-item">
<li><input type="checkbox" checked="checked" /><a href="http://localhost/">Item 1</a></li>
<li><input type="checkbox" /><a href="http://localhost/">Item 2</a></li>
<li><input type="checkbox" /><a href="http://localhost/">Item 3</a></li>
<li><input type="checkbox" /><a href="http://localhost/">Item 4</a></li>
<input type="button" id="save" value="Save"/>

3 个答案:

答案 0 :(得分:0)

试试这个:

$('#list-item input[type="checkbox"]:checked').next('a').attr('href');

您可以使用change事件来映射锚点的文本和链接,请尝试以下操作:

var anchors = [];
$('#list-item input').change(function(){
   var anchors = $(this).closest('ul').find('input:checked').siblings('a').map(function(){
                    return $(this).text() + ": " +this.href
               }).get()    
})

DEMO

答案 1 :(得分:0)

我认为您正在努力实现这一目标:

修改

$('#list-item input[checked=checked]').each(function(){
    alert($(this).next('a').text() + ': ' + $(this).next('a').attr('href') )
}) 

SEE DEMO

答案 2 :(得分:0)

您可以使用find方法获取元素下元素的值。然后在集合中使用jquery each方法获取值:

像这样。

function getAnchorValues(){
    var checklist = $('#list-item').find($('input[type="checked"]:checked');
    $.each(checklist, function(index, val){
        alert index + ' : ' +  val;
    });
}