jQuery的 - 在点击输入
问题描述:
标签的变更内容我有以下几点:jQuery的 - 在点击输入
<INPUT class="input_checkItem" TYPE="checkbox" NAME="n_checkbox" VALUE="1234" id="1" checked>
<label for="1">The value of this label is Yes</label>
而且我需要一种方法,这样,当我点击它改变了匹配的input
从“有”到“标签文本否“,反之亦然。 (checked
总是等于“是”,如果这有所作为)
但我不知道如何实际访问文本值,更不用说改变它了。
到目前为止,我有:
$('body').on('click','.input_checkItem',function()
{
txt = $(this).closest("label").text();
alert(txt);
})
但这只是回来空白。我怎样才能做到这一点?
答
试试这个:
$('body').on('click','.input_checkItem',function(){
$(this).next('label').text('Done');
});
答
试试这个
HTML
<div>
<input type="checkbox" name="chck">
<label>No</label>
</div>
JS
$('input[name="chck"]').change(function() {
var text = ($(this).is(':checked')) ? 'Yes' : 'No';
$(this).parent().find('label').text(text);
});
接下来,您可以使用html5数据属性来设置文本,因为js脚本中的文本很丑。
添加到复选框属性
<input type="checkbox" name="chck" data-label-yes="Yesss" data-label-no="Nooo">
,改变JS来
var text = ($(this).is(':checked')) ? $(this).data('label-yes') : $(this).data('label-no');
UPDATE
答
$(".input_checkItem").change(function() {
if (this.checked) {
$(this).next('label').text('done');
} else
alert(2);
});
欢呼声,这是伟大的。但是,如果我有两个(或更多)复选框,我怎样才能将它限制为已更改的那个? – IGGt
哦对不起,固定复选框的名称是不好的选择,你需要更像全球像课堂等等我更新了答案。 – daremachine
欢呼,那完美的作品。 – IGGt