流星:无法获取无线电输入值

时间:2014-06-05 18:30:57

标签: jquery meteor radio-button

我无法获得单选按钮的值以保存到数据库中。我可以获得文本输入并选择输入就好了。

它的图标属性不起作用。

这是我的第一次尝试javascript:

Template.goalAdd.events({
    'submit form': function(e) {
        e.preventDefault();

        var goal = {
            category: $(e.target).find('[name=category]').val(),
            goal: $(e.target).find('[name=goal]').val(),
            icon: $(e.target).find('input[name=icon]:checked').val()
        }

        Meteor.call('goal', goal, function(error, id) {
            if (error)
                return alert(error.reason);

            Router.go('/');
        });
    }
});

在那个版本中,我也尝试过:

icon: $(e.target).find('input[name=icon]:checked', '#addgoalform').val()

icon: $(e.target).find('[name=icon]:checked').val()

这是我的第二次尝试,创建一个阵列并使用每个:

Template.goalAdd.events({
    'submit form': function(e) {
        e.preventDefault();

        var icons = [];
        $('input[name=icon]:checked').each(function() {
            icons.push($(this).val());
        });

        var goal = {
            category: $(e.target).find('[name=category]').val(),
            goal: $(e.target).find('[name=goal]').val(),
            icon: icons
        }

        Meteor.call('goal', goal, function(error, id) {
            if (error)
                return alert(error.reason);

            Router.go('/');
        });
    }
});

这是html:

    <div>
        <label for="icon">Icon</label>
        <div id="icon" class="controls uncheckit">
            <ul class="iconradios">
                <li class="icomoonli">
                    <input type="radio" name="icon" value="user">
                    <label class="radio"><i class="fa-medium icon icon-user" ></i></label>
                </li>
                <li class="icomoonli">
                    <input type="radio" name="icon" value="users">
                    <label class="radio"><i class="fa-medium icon icon-users" ></i></label>
                </li>
                <li class="icomoonli">
                    <input type="radio" name="icon" value="boss">
                    <label class="radio"><i class="fa-medium icon icon-boss" ></i></label>
                </li>

            </ul>
        </div>
    </div>

1 个答案:

答案 0 :(得分:0)

我明白了。毕竟它不在模板js或html中。我忘了将该属性添加到此模板的Meteor方法中。