使用主干上的新数据更改模型的数据

时间:2013-11-16 01:34:04

标签: javascript jquery backbone.js

我有一张表格

<form>
<input id = "one" class = "number">
<input id = "two" class = "number">
<input id = "three" class = "number">
<input id = "four" class = "number">
</form>

在模型中。

我有一个按钮,它具有以下功能:

$("#button").click(function(){
    var mynumber = $("#one").val() + $("#two").val() + $("#three").val();

this.model.set(mynumber);
this.model.save({},{
    success: function(model, response) {
        console.log('success! ' + response);
    },
    error: function(model, response) {
        console.log('error! ' + response);
    }
});

});

问题是该函数正在对所有表单元素(一,二,三和四)进行发布请求。我希望在帖子请求中有mynumber而不是那些单独的元素。

我做错了吗?我是否需要创建新模型或者我是否可以使用新数据更新模型?

2 个答案:

答案 0 :(得分:0)

尝试解析输入值

var mynumber = parseFloat($("#one").val() )+parseFloat($("#two").val() )+ parseFloat($('#three').val());

答案 1 :(得分:0)

默认情况下,model.save将发送您存储在模型中的所有属性。如果您只想放置mynumber,我建议创建一个单独的新模型。您可以通过覆盖模型的同步方法来实现相同的目标,但这对于特定目的来说是一种过度杀伤。