2012-10-19 31 views
-1

我正在改变文本框的文本,并且修改了标签,但它隐藏了复选框?任何人都可以告诉我我做错了什么?jQuery为什么改变文本隐藏复选框?

这里

http://jsfiddle.net/6mZbm/6/

这里

<input type="text" id="txtInput" width="80px" /> 
</br> 
<label id="lbl" /> 
</br> 
</br> 
<input type="checkbox" id="chkUpdate" /> 

jQuery的

$(document).ready(function(event) { 

    $('#txtInput').keydown(function(event) { 

     $('#lbl').text($('#txtInput').val()); 
     $('#lbl').change(); 
    }); 


    $('#lbl').change(function(event) { 
     // alert($('#chkUpdate').size()); 
     $('#chkUpdate').change(); 
    }); 


}); 

好吧,我关闭它仍然没有工作标签标签... 检查更新小提琴。

EDIT 2好了现在的工作,但我没有得到我想做的事,应该清楚从代码,我想checkuncheck(基本不变)复选框,当标签被更新,但正如你可以在小提琴中看到的(我的和Muthu Kumaran提供的那个)复选框没有改变它的状态?

编辑3:这似乎与click()代替change()工作,但按jQuery specification,不应该将其与变化过工作吗?

+0

oopsy,加在你的标签 – ankur

+0

什么是你** **尝试做年底/>? – Prasanth

+0

@goldenparrot: 更新了问题 – Razort4x

回答

4

因为你没有关闭<label>标签,

关闭标签标记,它正常工作

<label id="lbl"></label> 

更新: 工作演示:http://jsfiddle.net/6mZbm/8/

+0

是否仍然无法正常工作。 – Razort4x

+0

它为我工作,http://jsfiddle.net/6mZbm/8/ –

+0

所以,我们不能关闭这样的标签? '/>'我关闭复选框和输入的方式? – Razort4x

0

要更换您的<label>文本包含您的复选框,将您的复选框从标签标签中取出。

0

只是把

<label id="lbl"></label>