2017-02-25 67 views
0

我想在选中它时更改单选按钮的背景图像。我已隐藏单选按钮并将其包裹在label>span>img中。我想在收音机被选中时更改图像的src。在jquery中遍历兄弟姐妹的孩子

<div class = " monthly-radio-div padding-lr-zero radio-inline"> 
    <input type="radio" name="inv_type" id="monthly" value = "monthly" > 
    <label for="monthly"> 
     <span class="radio"> 
     <img src="icons/r_dis.png"> 
     </span> 
    </label> 
</div> 

我想改变图像的src。我想,没有工作

$('#fund_sel_form input').on('change', function() { 
    var radio_val = $('input[name="inv_type"]:checked', '#fund_sel_form').val(); 
    $('input[name="inv_type"]:checked','#fund_sel_form').find('label').find('img').attr('src','icons/r_en.png'); 
}); 

回答

0

试试这个工作小提琴jsfiddle.net/s1f891vn/

$('.monthly-radio-div input').on('change', function() { 
    var parentDiv=$(this).parents(".monthly-radio-div:eq(0)"); 
    if($(this).is(":checked")){ 
     $(parentDiv).find("img").attr("src","https://cdn1.iconfinder.com/data/icons/toggle/512/radio-on-128.png"); 
    } 
    else{ 
     $(parentDiv).find("img").attr("src","https://cdn1.iconfinder.com/data/icons/toggle/512/radio-off-128.png"); 
    } 
}); 
0
$('.monthly-radio-div > input').on('change', function() { 
    var par =$(this).parents().eq(0); 
    if($(this).is(":checked")){ 
     $(parentDiv).find("img").attr("src","image.png"); 
    } 
    else{ 
     $(parentDiv).find("img").attr("src","image.png"); 
    } 
}); 
几种方法