当我在下面的<input>标记内单击时,单击alert()的“确定”按钮后,以下代码中的alert()仍然显示。

单击“确定”按钮后,我需要怎么做才能停止警报?我的代码需要退出输入标签并做其他事情。

....
<input type="text" class="txtInput" value="Test for focusin event" />
....
<input type="button" id="goBtn" value="GO" />
<script>
$(".txtInput").focusin(function () {
    var t = $(this).val();
    alert(t);
});
<script>

最佳答案

如果您已经集中精力,可以使用布尔标志轨道:

    ....
<input type="text" class="txtInput" value="Test for focusin event" />
....
<input type="button" id="goBtn" value="GO" />
<script>
var focused=false;
$(".txtInput").focusin(function () {
    if(focused) return;
    focused=true;
    var t = $(this).val();
    alert(t);
});
<script>


执行后,您可以将值设置回false。

或者,您可以取消绑定处理程序并在需要时重新绑定它。

10-07 14:32