如果点击Descriptions
<img src="../Images/Checkmark.ico"
名称
<li id="liRightDescriptions" style="display: list-item;">
<span><span>Descriptions</span>
<img src="../Images/Checkmark.ico" class="checkImage"></span>
</li>
我厌倦了这个: -
$('.checkImage').live('click', function (event) {
debugger;
event.preventDefault();
var name = $(this).prev().html();
答案 0 :(得分:1)
尝试:
$('.checkImage').click( function () {
var name = $(this).prev().html();
alert(name)
})
答案 1 :(得分:0)
不要使用live
折旧的
$('body').delegate('.checkImage','click',function(){
alert($(this).prev().html());
});
答案 2 :(得分:0)
您应该使用.siblings()
选择器(http://api.jquery.com/siblings/)
作为一个例子:
$('.checkImage').live('click', function (event) {
var name = $('.checkImage.').siblings('span').html();
}
答案 3 :(得分:0)
live()
函数已弃用,已替换为on()
,请使用:
$('body').on('click', '.checkImage', function(){
var text = $(this).prev('span').text();
});
答案 4 :(得分:0)
试试这个
$('.checkImage').click(function() {
var name = $(this).prev().html();
});
答案 5 :(得分:0)
这可能会有效,除非您的图片中没有关闭 / ,或许更多。 顺便说一句...使用.click()比使用.on()...和.live()折旧要慢。
我得到了它的工作,所以这里有一个固定的小提琴:
http://jsfiddle.net/digitalextremist/QT66f/
基本相同,但我删除了你可能不需要的东西。如果你这样做,请重新添加它们。
$('.checkImage').on('click', function (event) {
var name = $(this).prev().html();
alert( name )
})
HTML:
<li id="liRightDescriptions" style="display: list-item;">
<span>
<span>Descriptions</span>
<img src="../Images/Checkmark.ico" class="checkImage" />
</span>
</li>