获取RAILS中动态选择字段的选定选项/值

时间:2013-03-24 04:16:57

标签: javascript jquery ruby-on-rails

我这里有一个带有动态ID的select_field

为何动态?因为我使用了嵌套的字段/表单。

<%= f.select :category_id, Category.all.map{ |c| [c.code, c.id] }, {prompt:""},{class:"cat-code"} %>

我这里有一个JS代码,只需获取每个选择字段的动态ID。

        <%= javascript_tag do %>
                $(function() {



                    $(".cat-code").change(function(){          

                        var getID = this.id;
                        var value =  $("getID").val()

                        alert(value);

                        if (value == "1"){
                            $(".div1").show();
                            $(".div2").hide();
                        }

                        else if (value == "2"){
                            $(".div1").hide();
                            $(".div2").show();
                        }

                    });


                });
        <% end %>   

我可以使用..

获取id
alert(getID);

但是,选中的值会变为undefined,从而导致show()hide() div无效。

任何变通办法都将受到赞赏。感谢。

3 个答案:

答案 0 :(得分:3)

var value =  $("#" + getID).val()

答案 1 :(得分:0)

var element = $(this);
var value = element.val()

答案 2 :(得分:0)

谢谢大家,已经解决了这个问题。

                $(".cat-code").change(function(){          

                    var getID = this.id;
                    var value =  document.getElementById(this.id).value;

                    console.log(getID + "with a value of" + value);

                    if (value == ){
                        $(".div1").show();
                        $(".div2").hide();
                    }

                    else if (value == "2"){
                        $(".div1").hide();
                        $(".div2").show();
                    }

                });