在Meteor JS的运行时所有打开的浏览器中输入标签类型按钮值更新?

时间:2014-01-08 11:58:49

标签: javascript html meteor

我需要更新Mango DBMeteor的按钮值。我在这里做的如下:

  • 在第一个程序Button中,值 NULL 最初
  • 点击 NULL Button,然后按钮值更改为更新

问题是按钮值更新未在所有已打开的浏览器中显示,并且仅显示当前浏览器

我不熟悉Meteor JS。所以请检查以下代码并建议我该怎么做。

HTML代码:

<head>
  <title>App 1.3</title>
</head>

<body>
  {{> uname}}
  {{> main}}
  {{> games }}
</body>

<template name="uname">
<h1>Welcome to App</h1>
<p id="pname"><b>User Name :</b> <input type="text" id="uname" ></p>
</template>  

<template name="main">
<p id="pno"><b>Layout Number :</b> <input type="button" id="no" val =""></p>
     <div name="main"></div>
</template>

<template name="games">

     {{#each game}}

    <div>{{bval}}</div>
  {{/each}}
</template>

JS代码:

BtnValues= new Meteor.Collection('btnvalues');

var ButtonValue= "";
var Value = "UPDATED";
var val = "";
if (Meteor.isClient)
 {


  Template.main.events
  ({
    'click input' : function ()
    {
      // template data, if any, is available in 'this'

        var  name = document.getElementById('uname');
         console.log(name.value);


         var btnval = document.getElementById('no');

        if(btnval.value == '' && btnid != "no" )
        {
        btnval.value = Value;
            var myBtnData = BtnValues.findOne();
            BtnValues.update( {_id: myBtnData._id},{ $set:{bval :  btnval } });

        }
     }
  });


}
if (Meteor.isServer) 
{
  Meteor.startup(function () 
  {
    // code to run on server at startup

     BtnValues.insert({bval : val});

  });
}

1 个答案:

答案 0 :(得分:0)

修改

<input type="button" id="no" val ="">

<input type="button" id="no" val ="{{btnValue}}">

在Meteor.Client中添加以下帮助程序

Template.main.helpers({
  btnValue: function(){
    return BtnValues.findOne();
  })
});