javascript - 主干 View 显示然后消失

标签 javascript backbone.js

我有一个使用 Backbone.js 创建的 View ,并将其插入到 div 元素中 - 它显示大约一秒钟,然后消失。

这是我的 View 代码:

var addPlayerView = Backbone.View.extend({
    tagName: "div",
    model: Player,
    id: 'addPlayerDiv',

    initialize: function() {
        console.log('addPlayerView has been created');
    },

    render: function (){
        this.$el.html('<p>show this puppy</p>');
        return this;
    }
});

这是模型:

var Player = Backbone.Model.extend({
    defaults: {
        ID: "",
        firstName: '',
        lastName: ''
    },

    idAttribute: "ID"
});

这是 HTML:

 <form onsubmit="addNewPlayer();">
        <input type="submit" value="Add New Player New"/>
 </form>

<p>
<div id="addPlayerDiv"></div>
</p>

<script>

        function addNewPlayer() {
            var player = new Player({});
            var newPlayerView = new addPlayerView({el: $("#addPlayerDiv"), model: player});
            newPlayerView.render();
        };

</script>

addNewPlayer() 函数被正确调用,并且 newPlayerView 正在页面上呈现,但只持续了一秒钟,然后它就消失在页面上。

不知道该怎么办。有人以前遇到过这个问题吗?

最佳答案

您需要取消默认操作(在我们的例子中 onsubmit 尝试将数据发送到服务器)

<form onsubmit="addNewPlayer(); return false;">

<form onsubmit="addNewPlayer(event);">

function addNewPlayer(e) {
  e.preventDefault();
  .....
}

Example

关于javascript - 主干 View 显示然后消失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27632067/

相关文章:

javascript - React 路由器问题未捕获错误 : Invariant Violation: Element type is invalid: expected a string (for built-in components)

javascript - Jquery 触摸启用 slider

javascript - 主干模型服务器端和内存处理

javascript - 主干同步回调总是使用错误

php - 使用 Javascript 错误事件监听器检测失败与 PHP 在响应文本中返回 1

javascript - Hook document.createElement 脚本来更改 src

javascript - 无法访问 React 中的嵌套对象

javascript - rails 和 Backbone 一起工作

backbone.js - 根据全局变量的变化更新 Backbone 模型?

javascript - 使用 epoxy.js 绑定(bind)单选按钮