3

(因为 2 天我对此没有任何问题......)

我有一个多页布局,在我的一个页面中,我的结构如下:

<div id="view_offer" data-role="page">
        <div data-role="header">
            <h1>Edit Offer</h1>
        </div>
        <div data-role="content">
            <p><label><input id="auto_renew" type="checkbox" name="checkbox-0">Auto renew?</label></p>
        </div>
    </div>

在我关闭 body 标签之前使用以下脚本(按此顺序):

    <script src="js/cordova-2.5.0.js"></script>
    <script src="js/jquery-1.8.2.min.js"></script>
    <script src="js/jquery.mobile-1.3.0.min.js"></script>
    <script src="js/home_m_scripts.js"></script>

我的home_m_scripts.js文件:

$("#auto_renew").change(function(){
    alert("Changed!");
});

我的更改事件没有触发,我在这里不知所措。

4

1 回答 1

12

更改您的代码:

$("#auto_renew").change(function(){
    alert("Changed!");
});

至:

$(document).on('change','#auto_renew',function(){ 
    alert("Changed!"); 
});

当您绑定这样的事件时,它将充当事件委托。执行此绑定时,基本上对象不需要存在于 DOM 中。

于 2013-04-11T12:17:20.487 回答