服务器端用的是Rails
首次简单的使用一下 Backbone 的AJAX ,中间遇到许多坑
提一下:
首先三个 js 的加载循序一定要 是这样的
//= require jquery
//= require underscore-min
//= require backbone
这个涉及到 其中的许多初始化的东西,所以顺序错了,功能就不能用了
html:
<%= form_for :user,url: users_path do |f| %>
<div class="field">
<%= f.label :name %>
<%= f.text_field :name %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
<button id="add_name">Add Name</button>
<script type="text/javascript">
Man = Backbone.Model.extend({
url: "<%= users_url %>",
});
$("#add_name").click(function(){
var man = new Man;
man.set({name: "myname"});
man.save(); // 这个时候发送的POST请求
});
</script>
然后在controller 中处理一下传来的 params[:name] 保存到数据库中就行了
,中间有一个点就是
var man = new Man;
要放在 这个匿名的函数中,不然的话,第二次点击 button的话,会变成 put请求,主要是 backbone 会判断这个对象是不是新的,如果新创建的 则处理的参数为 create,如果是已经存在的,那么参数为 update 为put请求
所以有木有发现 ,这个 ajax请求很简单(其实jQuery写也很简单)!