在onchange之后,onclick事件不会被触发

Ton*_*ony 4 html javascript dom

重新创建此问题的步骤:

  1. 在文本框中键入内容
  2. 输入后单击按钮.
  3. 我发现只触发了onchange事件.

码:

<div>
    <input type="text" onchange="console.log('onchange');$('#message').css('display','none');" >
    <div id="message">
        Validating
    </div>
    <br>
    <input type="button" onclick="console.log('onclick');" value="click me">
</div>
Run Code Online (Sandbox Code Playgroud)

DEMO

Akh*_*ran 5

这是因为您正在更改布局,这会更改按钮位置,并且不会调用按钮鼠标事件.见演示:

JS Bin

如果你想隐藏div,通过保留它占用的空间,使用:

$('#message').css('visibility','hidden');
Run Code Online (Sandbox Code Playgroud)

隐藏可见性的新演示