我在我的Backbone.Marionette应用中使用了Backbone.Syphon
插件。当我单击表单的提交按钮时,我总是得到空对象({})..我不知道是什么原因,
有谁能帮我找到问题所在吗?
这是我的view.js
define([
'jQuery','underscore',
'backbone','marionette',
'text!./templates/loginView.html'],
function($,_,Backbone,Marionette,template){
"use strict";
var LoginView = Backbone.Marionette.ItemView.extend({
className:'col-xs-12 col-md-4 col-md-offset-4',
template:_.template(template),
events:{
"submit form" : "loginSubmit"
},
loginSubmit:function(e){
e.preventDefault();
var data = Backbone.Syphon.serialize(e.target);
console.log(data); //always return as empty object.
}
});
return LoginView;
}
);
这是我的表格:
<form action="#" id="loginForm" class="form-horizontal" role="form">
<legend>
<fieldset>
<label for="userName">UserName</label>
<input type="text" value="" id="userName" class="form-control" placeholder="Enter your Username">
<label for="password">Password</label>
<input type="text" id="password" value="" class="form-control" placeholder="Enter your Password">
<input type="submit" class="btn btn-primary" value="Login" id="login">
</fieldset>
</legend>
</form>
发布于 2014-06-08 12:26:49
我更新了我的表单html,将name
添加到元素中。它工作得很好。
以下是更新后的html:
<form action="#" id="loginForm" class="form-horizontal" role="form">
<legend>
<fieldset>
<label for="userName">UserName</label>
<input type="text" value="" id="userName" name="userName" class="form-control" placeholder="Enter your Username">
<label for="password">Password</label>
<input type="text" id="password" value="" name="password" class="form-control" placeholder="Enter your Password">
<input type="submit" class="btn btn-primary" value="Login" id="login">
</fieldset>
</legend>
</form>
https://stackoverflow.com/questions/24100315
复制相似问题