我有一个input
,可以在点击时将clicked
类添加到ID为#zip
的其他元素。这是代码:
$('#billing_zip').click(function () {
$('#zip').addClass('clicked');
});

#zip {
color: #444;
font-style: italic;
position: absolute;
top: 8px;
left: 35px
}
.clicked {
display: none;
}

<div class="chkField">
<label for="billing_zip">Zip</label>
<input type="text" onchange="clearContent(this);check_address('billing');" class="txtBoxStyle hasPlaceholder" tabindex="10" size="10" value="" id="billing_zip" maxlength="15" name="billing_zip">
<!--START: req_billing_zip-->
<img width="12" height="12" alt="" src="assets/templates/common/images/error2.gif">
<!--END: req_billing_zip-->
<div class="clear"></div>
<div id="zip">zip</div>
</div>
&#13;
我不知道为什么上面的jQuery无效。
答案 0 :(得分:2)
您忘记为billing_zip申报ID。
$(document).ready(function(){
$('#billing_zip').click(function () {
alert('hi');
$('#zip').addClass('clicked');
});
});
&#13;
#zip {
color: #444;
font-style: italic;
position: absolute;
top: 8px;
left: 35px
}
.clicked {
display: none;
}
&#13;
<div class="chkField">
<label id="billing_zip" for="billing_zip">Zip</label>
<input type="text" onchange="clearContent(this);check_address('billing');" class="txtBoxStyle hasPlaceholder" tabindex="10" size="10" value="" id="billing_zip" maxlength="15" name="billing_zip">
<!--START: req_billing_zip-->
<img width="12" height="12" alt="" src="assets/templates/common/images/error2.gif">
<!--END: req_billing_zip-->
<div class="clear"></div>
<div id="zip">zip</div>
</div>
&#13;
答案 1 :(得分:0)
您的代码正常运行
可能有两个问题:
您缺少添加 jQuery 引用:
您应该将代码包装在document.ready
事件中:
$(函数(){ $('#billing_zip')。click(function(){ $( '#拉链')addClass( '点击')。 }); });
答案 2 :(得分:0)
在这里查看jsfiddle。如果需要,请使用document.ready。我发现的一个重点是,如果输入框上的占位符文本很长,则它会覆盖整个输入框区域,并且不允许触发单击事件。参考jsfiddle。
$('#billing_zip').click(function () {
$('#zip').addClass('clicked');
});
$('#zip').click(function () {
$('#zip').addClass('clicked');
});
答案 3 :(得分:0)
如果这只是你想要的。然后你可以直接做:
$('#billing_zip').click(function () {
$('#zip').css("display","none"); // or you can use hide or fadeout property.
});
答案 4 :(得分:0)
当我将jQuery代码包装在“$(document).ready”中时,它起作用了:
$(document).ready(function(){
$('#billing_zip').click(function () {
$('#zip').addClass('clicked');
});
});