我有一个表格,其中将输入的无线电元素(标题下的第二层)包含到标题中(以生成选择项)-已经过测试,并且功能正常。
要管理标头,我需要单击查询事件,当标头不在上述情况下时,该事件将执行(已验证)操作。因此,如果我们不关心这种情况,则.click事件简单会返回true,以便在测试之后继续(简单的if)。
问题是未执行输入(从不检查标题中的单选按钮)。
注意:如果执行了操作(未执行测试),则将执行操作,并且需要用户再次单击以获得要检查的单选按钮。这是我可以检查单选按钮的寂寞情况。
(总结)了js代码:
$(".H_title")
.focusin(function(event) {
if ( ... ) { do stuff }
return true; // go on action
} )
.focusout(function() {...do_stuff);} );
//END
可能是什么原因?
注意:我不能将任何内容更改为可操作的html结构,因为它是由几种代码(php和其他js)生成的。我必须能够在不更改结构和内容的情况下将单选按钮检入页面。
最诚挚的问候
Trebly
答案 0 :(得分:0)
在此问题上,谢谢查理特菲。
我知道我的解释不够准确,无法理解此案。更多我在复制代码时引入了错误。
一个真正的问题是我找到了一个可以达到目标的解决方案,但我既不确定为什么它不起作用以及为什么现在起作用,我不确定。
有两个开发步骤:
1-仅当单击标题中的跨度时才执行填充(但在按住shift键时不涉及元素上的其他填充)。 HTML结构包含:
<h5>
<span class="toc-target" tabindex="1000"> <!-- puts the "target" on top -->
<span class="H_title">
Adhérent
</span>
</span>
<span class="endof_tocid"></span>
</h5>
前两个级别的SPAN的原因是它是由两个不同的软件块完成的,并且需要两个不同的类。
有效的相关代码(自三年以来)为:
$(".H_title")
.click(function(event) {
if ( ... ) { do stuff1 }
return true; // go on action
} )
.focusin(function() {...do_stuff2a);} );
.focusout(function() {...do_stuff2b);} );
//END
2-在某些情况下,我需要一个单选按钮,并且在这种情况下不执行stuff1(只需将输入添加到标题中),然后HTML代码变为:
<h5>
<span class="toc-target" tabindex="1000"> <!-- puts the "target" on top -->
<span class="H_title">
<input name="user_type" type="radio" value="adh">
Adhérent
</span>
</span>
<span class="endof_tocid"></span>
</h5>
然后我写了不起作用的js代码:
$(".H_title")
.click(function(event) {
if ( ... ) { do stuff1 }
return true; // go on action of the click on the button
} )
.focusin(function() {...do_stuff2a);} );
.focusout(function() {...do_stuff2b);} );
//END
在我看来,该错误似乎是单选按钮无法进入H_title范围,而没有用于管理事件的代码。注意:焦点动作和事件也是如此。
如果没有为click事件编写Jquery代码,则说明一切正常。
//BEGIN
$(".toc-target > input")
.click( function(){ return true; });
.focusin(function() {return true; } );
.focusout(function() {return true; } );
$(".H_title")
.click(function(event) {
if ( ... ) { do stuff1: move-top }
return true; // go on actions
} )
.focusin(function() {...do_stuff2a);} );
.focusout(function() {...do_stuff2b);} );
//END
使用此代码单击输入功能,行为是什么:
1- $(".toc-target > input")
事件被引发并返回true,这似乎无济于事,导致正常选择了单选按钮和事件气泡。
2-H_titles收到他的click事件,并正常执行。
就目前而言,focusin-focusout仍不能与按钮结合使用,我认为问题出在与单击的冲突(单击标题时焦点)。 我必须澄清一些有关人体工程学的要点和兼容性(在PC和Mobiles上可用)。
另一种解决方案可能是从H_title到“输入”似乎“传播” ,但是我还没有找到一种将stuffxx所需的一切都清楚地分离出来的好方法。
可能是我错了,或者您有一些建议以最佳方式做到这一点。
最诚挚的问候
Trebly