改变不像预期那样动态反应

时间:2014-10-19 22:14:56

标签: javascript php jquery

我是javascript的新手,我使用的是jquery,这是我的带有PHP代码的HTML:

<form action="" method="POST" enctype="multipart/form-data">
    <h1>Quantity 1</h1>
    <input id="btn1" type="number" name="cantpag" value="<?php echo $cp; ?>">

    <h1>Quantity 2</h1>
    <input id="btn2" type="number" name="cantreinv" value="<?php echo $cr; ?>">

    <input type="submit">
</form>

这是我的JS:

<script>
$(document).ready(function(){
    $(document).on('change','#btn1',function(){
        alert('works');
    });
});</script>

当我更改&#34;#btn1&#34;的值时,没有任何事情立即发生,相反,我必须按Tab键或其他地方以显示警报。有什么方法可以实现这一点,例如,只需在输入字段中添加或删除数字就会触发警报吗?

1 个答案:

答案 0 :(得分:3)

    $(document).ready(function(){
        $(document).on('input','#btn1',function(){
            alert('works');
        });
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form action="" method="POST" enctype="multipart/form-data">
    <h1>Quantity 1</h1>
    <input id="btn1" type="number" name="cantpag" value="<?php echo $cp; ?>">

    <h1>Quantity 2</h1>
    <input id="btn2" type="number" name="cantreinv" value="<?php echo $cr; ?>">

    <input type="submit">
</form>

input事件应该会更好。某些元素的change事件需要blur才能注册。