twitter bootstrap的预先输入和多个文本字段

时间:2013-02-10 05:26:43

标签: javascript jquery ruby-on-rails twitter-bootstrap callback

我的应用处理标签和电影实体:多对多关系。连接实体被命名为“tagazation”。我希望用户能够在模态窗口中为每个电影添加标签。 因此,我为索引动作中的每个电影渲染隐藏的模态窗口。问题出在tag_id字段中: 我在每种形式都有twitter bootstrap的typeaheaded textfield。所有这些字段共享公共类“tags-input”。在textfield中的select事件中触发set_id函数:

$(document).ready(function() {
function set_id(item, val, text){
    $(this).parent().children("#tagazation_tag_id").val(val);
}
$(".tags-input").typeahead({
    source: [],
    itemSelected: set_id
});
});

set_id函数应该以与触发该回调的文本字段相同的形式更改PARTICULAR隐藏字段,但标记ID有多个隐藏字段。如果我们知道究竟什么样的set_id函数被启动了,那当然不会是一个大问题。

我相信,应该有一种“标准”的方式来应对这个问题,而不是通过DOM树搜索仍然没有工作的浏览。

1 个答案:

答案 0 :(得分:0)

如果我理解你要做的事情,我认为最简单的解决方案是只为html渲染一个隐藏的模态对话框,而不是为每部电影渲染一个模态对话框。在打开模态之前,您可以使用javascript设置所需的文本,以使模态引用被点击的电影。

如果您只有一个模态对话框,则可以将隐藏标记ID字段称为$('#tagazation_tag_id'),而不会混淆它所引用的输入。