使用backbonejs和jquery将模型同步到asp.net服务器
syncing a model to asp.net server using backbonejs and jquery
我想看看如何在扩展模型上指定urlRoot
时使用model.save()
方法保存模型到服务器,但是当我请求model.fetch()
或do model.save()
时,ajax请求永远不会触发。注:如果不使用Collection,我想这是可能的吗?
HTML
<div id="placeholder"></div>
<script type="text/template" id="view_template">
Hello <%= name %>, here is your script <%= script %>
</script>
模型 window["model"] = Backbone.Model.extend({
initialize: function () {
console.log("CREATED");
},
defaults:{
name:"Please enter your name",
script:"Hello World"
},
urlRoot: "index.aspx",
validate: function (attrs) {
},
sync: function (method, model, success, error) {
console.log("SYNCING", arguments);
}
});
<<h3>视图/h3> window["view"] = Backbone.View.extend({
template:_.template($("#view_template").html()),
initialize: function () {
console.log("INITIALISED VIEW");
this.model.bind("change","render",this);
},
render: function (model) {
console.log("RENDERING");
$(this.el).append(this.template(model));
return this;
}
});
<<h3>应用程序/h3>$("document").ready(function () {
var myModel = new model({
name: "Stack Overflow",
script: "alert('Hi SO')"
});
var myView = new view({
model: myModel,
el: $("#placeholder")
});
console.log("SAVING");
myModel.save();
console.log("FETCHING");
myModel.fetch();
});
你可以在应用程序中看到,我调用save & fetch
,但根据文档,这应该触发ajax请求与POST -> SAVE
&GET -> FETCH
。但它所做的只是在sync函数中将参数记录到控制台。
我认为您没有看到任何Ajax请求的唯一原因是您已经覆盖了模型。同步方法。通常情况下,只有在希望替换Backbone.sync中实现的默认Ajax同步时才会这样做。参见Model中的下面一行。在backbone.js中获取:
return (this.sync || Backbone.sync).call(this, 'read', this, options);
我对你的代码做了一个快速测试,如果我重命名你的模型,我看到Ajax请求。同步方法。
相关文章:
- 借助asp.net验证或java脚本对多个文本进行验证
- 将Javascript数组发送到控制器ASP.NET MVC
- ASP.NET通过单击JavaScript按钮触发c#事件
- 文本框不是从Javascript/Asp.net中的对话框中打印出来的
- 从javascript调用asp.net codebehind函数
- 使用javascript的Asp.net内容占位符
- 获取ASP.NET Ajax Timer状态
- ASP.NET网络摄像头显示
- 如何在只能有一个asp.net表单的主页上从asp.net页面中的javascript中获取值
- 如何将乳胶配方奶粉图像保存到Asp.net中的文件夹中
- asp.net,包括iss上的javascript slow
- 选择不在GridView-ASP.NET中激发
- 什么'是在asp.net MVC中将本地化的resources.resx文件转换为javascript文件的有效
- 使用ASP.NET将谷歌地图添加到项目中,并从数据库中检索位置
- 有什么“;错误的”;将javascript放在asp.net表单上,而不是放在单独的文件中
- 将Javascript日期转换为ASP.NET日期格式
- C#asp.net mvc Set CheckBoxFor已检查的具有Model Value的属性
- 在asp.net中确认是或否消息
- ASP.NET MVC 3-在ajax调用后,重定向到新页面或生成页面刷新
- asp.net中的验证工具