我的应用处理标签和电影实体:多对多关系。加入实体被命名为“tagazation”。我希望用户能够在模态窗口中为每部电影添加标签。因此,我将隐藏的模式窗口渲染到索引操作中的每部电影的页面。问题出在 tag_id 字段中:我在每个表单中都有 twitter bootstrap 的 typeaheaded 文本字段。所有这些字段共享公共类“标签输入”。在文本字段中的选择事件触发 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 函数应该以与触发该回调的文本字段相同的形式更改特定的隐藏字段,但标签 ID 有多个隐藏字段。如果我们确切地知道 set_id 函数是为哪部电影启动的,那当然不会是一个大问题。
我相信,应该有一种“标准”的方式来处理这个问题,而不是通过 DOM 树搜索来进行我仍然无法正常工作的浏览。