以下是HTML代码:
<div id="overlay">
<form action="/login" id="login_form">
<input type="text" placeholder="Login" id="login_form-login">
<input type="text" placeholder="Password" id="login_form-password">
<input type="submit" value="Log in">
</form>
</div>
这是骨干代码:
LoginForm = Backbone.View.extend({
el: $("#overlay"),
events: {
"submit #login_form" : "login",
},
login: function(e) {
e.preventDefault();
console.log("hello backbone");
}
});
var login_view = new LoginForm();
永远不会调用登录功能。我知道骨干是关于模型和模板的,但有没有办法将事件绑定到现有的html表单?
答案 0 :(得分:0)
好吧,我找到了解决方案。
mu is too short是正确的 - #overlay
在代码执行时尚不存在。
以下是修复:
$(document).ready(function(){
var login_view = new LoginForm();
login_view.show();
});