Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将输入文本值或数据从一个视图发送到另一个视图?_Javascript_Backbone.js_Marionette_Backbone Views_Backbone Routing - Fatal编程技术网

Javascript 如何将输入文本值或数据从一个视图发送到另一个视图?

Javascript 如何将输入文本值或数据从一个视图发送到另一个视图?,javascript,backbone.js,marionette,backbone-views,backbone-routing,Javascript,Backbone.js,Marionette,Backbone Views,Backbone Routing,您能告诉我如何将数据从一个视图发送到另一个视图吗?实际上,我的主屏幕上有一个输入字段和按钮。我想在单击按钮时将输入文本的数据从一个屏幕发送到另一个屏幕。我想将输入字段的文本从一个视图发送到另一个视图。我可以在单击按钮时将一个屏幕移动到另一个屏幕,但我无法在另一个屏幕上发送输入文本 这是我的密码 为此,您需要从.moveToNext()函数实例化您的SecondView,并提供必要的参数: // app.js moveTonext: function(){ new SecondView(

您能告诉我如何将数据从一个视图发送到另一个视图吗?实际上,我的主屏幕上有一个输入字段和按钮。我想在单击按钮时将输入文本的数据从一个屏幕发送到另一个屏幕。我想将输入字段的文本从一个视图发送到另一个视图。我可以在单击按钮时将一个屏幕移动到另一个屏幕,但我无法在另一个屏幕上发送输入文本

这是我的密码


为此,您需要从
.moveToNext()
函数实例化您的
SecondView
,并提供必要的参数:

// app.js
moveTonext: function(){
    new SecondView({ 
        model: new Backbone.Model({
            value: this.$("input").val()
        })
    });
},
您还需要更新第二个视图,以向模板提供模型的属性:

// second.js
render: function(){
    this.$el.html(this.template(this.model.toJSON()));
},
以及模板本身:

// second.html
<h1>Value from previous page: <%- value %></h1>

这里有一个答案。

谢谢你的回答。。!!我们可以在url上传递输入字段的值吗?从路由器上的urlmean获取值我们可以这样定义:“:inputvalue”:“somefunction”并在第二页获取值是的,您可以。您可以在这里阅读有关路由功能的信息:是的,谢谢。您可以添加一个plunker吗?我将如何实现这一点?您可以使用路由器概念创建一个plunker吗?我将感谢您
// second.html
<h1>Value from previous page: <%- value %></h1>
// router.js
routes: {
    'secondView(/:msg)': 'secondView'
},

secondView: function(msg) {
  new SecondView({ model: new Backbone.Model({ value: msg || '' }) });
}

// app.js
moveTonext: function() {
    new Router().navigate(
        'secondView/' + this.$('input').val(),
        { trigger: true }
    );
},