如何在jQuery中获取元素的值(即:2)。
我尝试使用$(this).("label").attr('for')
,但它不起作用。
感谢。
<div class="checkbox col-sms-6 col-sm-6 moods">
<label for="2">
<input type="checkbox" id="2">2
</label>
</div>
$("form").on("click", "div.moods", function(event){
var moodsId = $(this).("label").attr('for');
var moodsBtn = $('#moods');
var moodsBtnValue = $('#moods').val();
if(moodsBtnValue.toString().indexOf(moodsId) == -1) { moodsBtn.val(moodsBtnValue + moodsId + ","); }
else { moodsBtn.val(moodsBtnValue.replace(moodsId + ',','')); }
});
答案 0 :(得分:2)
您需要使用.find
方法获取子元素:
var id = $(this).find("label").attr('for')
然后获得你要做的价值:
$('#moods').find("#" + id).val();
答案 1 :(得分:0)
另一种方式
$(this).find(">:first-child").attr('for');
或
$(this).children(":first").attr('for');