2017-03-23 1 views
1

에 부모의 텍스트를 얻을 나는 다른 값에 같은 시간에 "foo1은"와 "BAR1"을 추출하고자하는 다음 목록을jQuery를 목록

$(document).ready(function() { 
 
    $('li').click(function(e) { 
 
    alert($(e.target).children().remove().end().text()); 
 
    alert($(e.target).siblings('span:first').text()); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    <li> 
 
    <span>foo1</span> 
 
    <span style="visibility: hidden">bar1</span> 
 
    </li> 
 

 
    <li> 
 
    <span>foo2</span> 
 
    <span style="visibility: hidden">bar2</span> 
 
    </li> 
 

 
    <li> 
 
    <span>foo3</span> 
 
    <span style="visibility: hidden">bar3</span> 
 
    </li> 
 
</ul>

있습니다. 위의 함수는 정말 이상하게 보인다. 누군가 더 나은 접근법을 찾을 수 있을까요?

내 jQuery 기능을 조정할 수 있습니까?

답변

3

이 코드를 시도해야합니다 :) (

$(document).ready(function() { 
    $('li').click(function() { 
    console.log('span #1', this.children[0].innerHTML); 
    console.log('span #2', this.children[1].innerHTML); 
    }); 
}); 
0

당신은) (스팬을 찾을 필요를, 다음 (텍스트를 할) 또는 HTML

$(document).ready(function() { 
 
    $('li').click(function(e) { 
 
    alert($(e.currentTarget).find('span:last-child').text()); 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    
 

 
    <li> 
 
    <span>foo1</span> 
 
    <span style="visibility: hidden">bar1</span> 
 
    </li> 
 

 
    <li> 
 
    <span>foo2</span> 
 
    <span style="visibility: hidden">bar2</span> 
 
    </li> 
 

 
    <li> 
 
    <span>foo3</span> 
 
    <span style="visibility: hidden">bar3</span> 
 
    </li> 
 
</ul>

+0

변경된 내용을 확인하고 – Roy

1

find('span:first').text()을 사용하여 foo으로 텍스트를 가져올 수 있습니다.

$(document).ready(function() { 
 
    $('li').click(function(e) { 
 
    console.log($(this).find('span:first').text()); 
 
    }); 
 
});
I have the following list $(document).ready(function() { $('li').click(function(e) { alert($(e.currentTarget).text()); }); }); 
 

 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    <li> 
 
    <span>foo1</span> 
 
    <span style="visibility: hidden">bar1</span> 
 
    </li> 
 

 
    <li> 
 
    <span>foo2</span> 
 
    <span style="visibility: hidden">bar2</span> 
 
    </li> 
 

 
    <li> 
 
    <span>foo3</span> 
 
    <span style="visibility: hidden">bar3</span> 
 
    </li> 
 
</ul> 
 

 
Expand snippet I would like to get only the "foo".text() of each list element clicked. With my actual approach I also receice the "bar".text() unfortunately. Could you adjust my jQuery function please? javascript jquery target shareeditcloseflag asked 
 
6 mins ago AppRoyale 1281217

당신은 더 약 find()heretext()here를 읽을 수 있습니다.

+0

@AppRoyale, 왜 downvote인지 알려주세요. 지금 내 대답을 업데이트했습니다. 그것을 확인하십시오 – Ionut

+0

나는 당신을 downvote하지 않았다. – AppRoyale

+0

@AppRoyale, ok, 업데이트 된 답변을 본 적이 있으십니까? – Ionut