1

我正在为我的项目使用 CanJS(一个 js 框架),但我遇到了一个问题。

我在 book.js 中编写了一些代码,如下所示:

Book = can.Model({
    create: 'POST site/book'
},{});

Books = can.Control({
        
        '.gotoPrevPage click' : function(){
            b= new Book({name:"newbook1"});
            b.save();
        }
});

而且,我的html文件如下:

...
<script type="text/javascript" src="js/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="js/can.jquery-1.0.7.min.js"></script>
<script type="text/javascript" src="js/book.js"></script>
...
<div class="twopageDoc">

    <div class="gotoPrevPage"></div>

    <div class="leftPage">

        <img src="images/1.jpg" />

    </div>

    <div class="rightPage">

        <img src="images/2.jpg" />

    </div>

    <div class="gotoNextPage"></div>

</div>
...

现在,当我单击带有类gotoPrevPage事件的 div 时不起作用并且我没有看到任何错误,但是当我使用 Chrome 控制台并写下上述事件的 2 行代码时,POST 完成并且它可以工作。我不知道原因。

4

1 回答 1

4

从您的代码看来,您没有初始化控制器。您应该在 DOM 元素上创建 Books 的实例:

new Books('.twpopageDoc')
于 2012-11-10T11:36:43.993 回答