我正在为我的项目使用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>
...
现在,当我点击div与类“gotoPrevPage”事件不起作用,我没有看到任何错误。但是当我使用Chrome控制台并记下上述事件的2行代码时,POST就完成了它的工作原理。我不知道原因。
答案 0 :(得分:4)
从您的代码看起来您没有初始化控制器。您应该在DOM元素上创建Books的实例:
new Books('.twpopageDoc')