设置单选按钮的值

yankeyhotel

因此,我试图在编辑表单上设置单选按钮的值。我尝试使用jQuery运行if语句,然后使用选择器设置checked属性。但是我想我不了解jQuery和Template.template.helpers如何一起工作,因为我永远无法让jQuery做任何事情。

无论如何,我有以下工作要做,但是如果这是最好的方法,我只是好奇。就像在表单中设置单选按钮的值一样简单,这似乎有点肿。我想可能会有更好地适用于表格的软件包。

这是Javascript

Template.clientEdit.helpers({

    // set the radio buttons
    isActive: function() {
        if (this.status == "active") {
            return "checked";
        }
    },

    isArchived: function() {
        if (this.status == "archived") {
            return "checked";
        }
    },
});

和HTML

<input type="radio" name="status" id="status-radio-1" value="active" {{isActive}} >
<input type="radio" name="status" id="status-radio-2" value="archived" {{isArchived}} >

谢谢

内森

您可以编写一个全局把手帮助程序,以在您所有的Meteor表单中使用,例如:

Handlebars.registerHelper('checked_eq', function(x, y){
  if (x === y){
     return ' checked="checked"';
  }
  return ''
})

并在您的模板中使用它,例如:

<input type="radio" name="status" id="status-radio-1" value="active" {{checked_eq status 'active'}} >
<input type="radio" name="status" id="status-radio-2" value="archived" {{checked_eq status 'archived'}} >

您还可以编写一些更通用的东西,例如:

Handlebars.registerHelper 'checked', (x)-> if x then ' checked="checked"' else ''
Handlebars.registerHelper 'notChecked', (x)-> if x then '' else ' checked="checked"'
# repeat for disabled / selected etc

并在渲染模板之前对您的data / dataContext也应用转换:

 // ...  using iron-router for data contet
 data: function(){
   var client = Clients.findOne(this.params.clientId);
   client.checkedActive = (client.status == 'active');
   client.checkedArchived = (client.status == 'archived');
   return client;
 }
 // ...

 // ... or apply a transform when making a list
 Template.clientList.helpers({
    clients: function(){
      return Clients.find({},{
        transform: function(client){
           client.checkedActive = (client.status == 'active');
           client.checkedArchived = (client.status == 'archived');
           return client;
        }
      });
    }
 });

然后在您的模板中使用,例如:

<input type="radio" name="status" id="status-radio-1" value="active" {{checked checkedActive}} >
<input type="radio" name="status" id="status-radio-2" value="archived" {{checked checkedArchived}} >

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

RaisePropertyChanged设置单选按钮的值

来自分类Dev

RaisePropertyChanged设置单选按钮的值

来自分类Dev

设置嵌套单选按钮的值

来自分类Dev

如何设置单选按钮组内的单选按钮的值

来自分类Dev

在React中设置单选按钮值

来自分类Dev

在单选按钮中设置默认值

来自分类Dev

Codeigniter中单选按钮的设置值

来自分类Dev

根据单选按钮设置 input[text] 值

来自分类Dev

如何在jQuery中设置单选按钮列表的选定值

来自分类Dev

仅使用Javascript根据选项选择设置单选按钮值

来自分类Dev

如何使用jQuery设置单选按钮选择值

来自分类Dev

如何在量角器中设置单选按钮值

来自分类Dev

将值(int)设置为选中单选按钮WPF

来自分类Dev

如何在角度ngfor中设置单选按钮组的值

来自分类Dev

如何根据所选的单选按钮在代码隐藏中设置值?

来自分类Dev

使用ng-repeat在动态单选按钮上设置值

来自分类Dev

如何为默认单选按钮设置一个值?

来自分类Dev

jQuery mobile设置单选按钮组的选定值

来自分类Dev

根据单选按钮更改设置默认下拉列表值

来自分类Dev

在 Apps 脚本中从数组设置 HTML 单选按钮的值?

来自分类Dev

有条件地设置单选按钮值

来自分类Dev

单选按钮的值

来自分类Dev

从单选按钮传递值?

来自分类Dev

获取单选按钮值

来自分类Dev

获取单选按钮的“ on”值

来自分类Dev

单选按钮的值

来自分类Dev

如何设置单选按钮的样式

来自分类Dev

在非checkboxradio对象上使用jquery按值设置单选按钮(按钮与CSS的行为不同)

来自分类Dev

AngularJS-如果没有为单选按钮选择任何值,则设置默认值