我有一個使用Backbone.js的基本應用程序,它不會進行PUT調用(更新模型)。從前端來看,我打電話給一個型號爲save
的函數不會進行PUT調用;但是,如果我將其替換爲destroy
,它確實會向後端發出DELETE調用。任何人有任何想法可能是什麼問題?沒有觸發PUT請求的函數是saveTask
函數。Backbone.js - model.save()沒有發起PUT請求
App.Views.Task = Backbone.View.extend({
template: _.template("<label>ID:</label><input type='text' id='taskId' name='id' value='<%= _id %>' disabled /><br><label>Title:</label><input type='text' id='title' name='title' value='<%= title %>' required/><br><label>Content:</label><input type='text' id='content' name='content' value='<%= content %>'/><br><button class='save'>Save</button>"),
events: {
"change input":"change",
"click .save":"saveTask"
},
render: function(eventName){
$(this.el).html(this.template(this.model.toJSON()));
//console.log(this.generateTemplate());
return this;
},
change: function(event){
var target = event.target;
console.log('changing ' + target.id + ' from: ' + target.defaultValue + ' to: ' + target.value);
change[target.name] = target.value;
this.model.set(change);*/
},
saveTask: function(){
this.model.set({
title:$("#title").val(),
content:$("#content").val()
});
if(this.model.isNew()){
App.taskList.create(this.model);
} else {
this.model.save({});
}
}
});
您使用的是什麼版本的Backbone?更新版本爲0.9.9的模型時遇到了一些問題。這可能是保存過程中的一個沉默錯誤,或者是您的骨幹版本的錯誤。 – mor