Javascript 操纵其他DOM元素时未选择单选按钮
我面临的问题发生在单选按钮点击上。 当输入字段具有焦点且发生模糊事件时,将发生一些字段验证,错误消息应显示在输入字段下方。 在以下场景中:Javascript 操纵其他DOM元素时未选择单选按钮,javascript,html,css,Javascript,Html,Css,我面临的问题发生在单选按钮点击上。 当输入字段具有焦点且发生模糊事件时,将发生一些字段验证,错误消息应显示在输入字段下方。 在以下场景中: 关注文本输入字段 单击单选按钮 显示错误消息,但未选择单选按钮。小提琴: 请参阅下面的代码片段: $('input.yo').focus(); $('input.yo').focus(函数(){ $('div#message').hide(); }); $('input.yo').blur(函数(){ $('div#message').show(); //
$('input.yo').focus();
$('input.yo').focus(函数(){
$('div#message').hide();
});
$('input.yo').blur(函数(){
$('div#message').show();
//$('div#message')。延迟(100)。显示(0);
});代码>
#消息{
显示:无;
}
名字:
一些验证错误消息
选择1
选择2
是的,您可以使用变通方法:
$('input.yo').blur(function() {
setTimeout(function() { $('p').show(); }, 100);
});
希望这有帮助
$('input.yo').focus();
$('input.yo').focus(函数(){
$('p').hide();
});
$('input.yo').blur(函数(){
setTimeout(函数(){$('p').show();},100);
});代码>
p{
显示:无;
}
名字:
一些验证错误消息
选择1
选择2
很简单,请注意:
我们在这里有两个动作:
1 将焦点放在输入之外:
当您按下鼠标按钮(或TAB键,但让我们想想鼠标)时,会触发该操作
2#选中单选按钮:
当按下鼠标按钮并松开按钮时,该动作被触发,这意味着只有在松开按钮时才会选中单选按钮
现在,想想看。当您按出输入时(在我们的例子中是单选按钮),您正在显示
,但是只有当您松开单选按钮上方的按钮时,才会检查单选按钮,但是
已经在按钮之前的位置。你看到问题了吗
孤子
只需添加一种不同的方式来显示您的消息,它不会与单选按钮的位置冲突。您可以使用位置
,或更简单的方式进行样式设置,如下所示:
我希望它能帮助你。:) 添加的代码片段供将来参考。谢谢Claudio。我也知道这个解决方案。但是,如果你不能移动信息,并且它应该在那里(即使设计不是最好的)。我想知道在不改变错误消息位置的情况下,是否还有其他方法可以在这里完成。当然,总有一种方法,总有一种方法。您可以在jQuery中使用mousedown
切换选中单选按钮
。执行此操作时,无需释放“单击选择”按钮。看看这里:很好,这是更好的解决方案:)谢谢汉克斯,这是我在问题中已经提到的另一个解决方案。但这并不理想,我希望避免使用超时。