Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.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
Jquery Meteor.js-在模板重构时设置焦点以形成输入字段_Jquery_Meteor - Fatal编程技术网

Jquery Meteor.js-在模板重构时设置焦点以形成输入字段

Jquery Meteor.js-在模板重构时设置焦点以形成输入字段,jquery,meteor,Jquery,Meteor,新的流星和感谢任何帮助-一直在努力与这一个。因此,我有一个按条件绘制的模板: {{#if creating}} <form class="form-create"> <input name="name" type="text" id="mainInput"> <button type="submit">Submit</button> <a class="cancel" href="#">Cance

新的流星和感谢任何帮助-一直在努力与这一个。因此,我有一个按条件绘制的模板:

{{#if creating}}
    <form class="form-create"> 
     <input name="name" type="text" id="mainInput">
     <button type="submit">Submit</button>
     <a class="cancel" href="#">Cancel</a>
     </form>
 {{else}}
   <a class="create" href="#">Create</a>
  {{/if}}
},

但是,我不能让这个焦点“聚焦”在从锚到窗体的屏幕重画上

我尝试在会话变量(Creating)代码中连接它,这样每次创建都会发生更改(console.log我看到Creating从true切换到false,我验证Creating为true,从helper块调用焦点,但没有更改)

我还尝试了创建会话变量的跟踪器-像这样,没有用,焦点没有实现:

Tracker.autorun(function () {
  var creating = Session.get('creating');
  console.log('Autorun is auto-running!');
  console.log(creating); 

  if (creating) {
       $('#mainInput').focus(); // I tried documentbyID, etc but nothing
  }
}); 

我意识到它可能与跟踪器有关,或者可能有一个我不知道的“钩子”(我尝试了渲染模板,但这似乎只在最初创建时起作用,有一次)我现在正在阅读指南,但对此仍然是新手,任何帮助/指导都非常感谢。谢谢

您的思路是正确的,您只需要使用
跟踪器。当Meteor有机会在
会话
变量无效且空格键
{{{if}}阻塞辅助路径后,afterFlush回调注册执行
焦点
调用

Tracker.autorun(function () {
  var creating = Session.get('creating');   
  if (creating) {
    Tracker.afterFlush(function(){
      $('#mainInput').focus();
    });
  }
});
尝试添加自动对焦

<input name="name" type="text" id="mainInput" autofocus>


我也试过了!伟大的功能-但它只关注初始绘制,而不是以后(在取消/创建之间切换)。酷,不知道!工作起来很有魅力!陨石(你也是)!谢谢
<input name="name" type="text" id="mainInput" autofocus>