Javascript Jquery UI对话框模式窗体不';t出现在桌子里面
不会出现在桌子里面,但在外面效果很好 这是不起作用的haml代码,最后一行是模态表单调用:Javascript Jquery UI对话框模式窗体不';t出现在桌子里面,javascript,jquery,ruby-on-rails,jquery-ui,dom,Javascript,Jquery,Ruby On Rails,Jquery Ui,Dom,不会出现在桌子里面,但在外面效果很好 这是不起作用的haml代码,最后一行是模态表单调用: %table %thead %th= "gravatar" %th= "description" %th= "add tag" %tbody - @watched_repos.each do |repo| %tr.row %td.gravatar = image_tag("#{r
%table
%thead
%th= "gravatar"
%th= "description"
%th= "add tag"
%tbody
- @watched_repos.each do |repo|
%tr.row
%td.gravatar
= image_tag("#{repo.avatar_url}", :height => '36', :width => '36')
%td= repo.description
%td= link_to "Add tag", tagging_path, :id => 'add-tag'
如果我只是把=link\u放在“addtag”上,标记路径:id=>“addtag”
放在表外(顶部),效果很好…:-(
指向helper的链接在public/javascripts/application.js中调用以下Jquery代码:
$(document).ready(function() {
$('#add-tag').click(function(e) {
var url = $(this).attr('href');
var dialog_form = $('<div id="dialog-form">Loading form...</div>').dialog({
autoOpen: false,
width: 520,
modal: true,
open: function() {
return $(this).load(url + ' #tagging');
}
});
dialog_form.dialog('open');
e.preventDefault();
});
});
$(文档).ready(函数(){
$(“#添加标记”)。单击(函数(e){
var url=$(this.attr('href');
var dialog_form=$('Loading form…')。dialog({
自动打开:错误,
宽度:520,
莫代尔:是的,
打开:函数(){
返回$(this).load(url+'#tagging');
}
});
对话形式对话(“打开”);
e、 预防默认值();
});
});
更新
这似乎不是一个“表嵌套”问题,而是UI对话框“状态/事件”问题,事实上,破坏模态表单功能就足以放置两个相同的链接,即使在表外:
掘墓人
回购
添加标签
...
第一个是Jquery劫持第二个不是…有什么帮助吗
提前谢谢
LucaHTML DOM树中应该只有一个ID。jQuery UI对话框可能会假定此选择器中只有一个元素:
$(“#添加标记”)
,可能就是这样。快速修复方法是将选择器更改为$('.button.icon.tag')
为了更好地解决此问题,您应该将ID设置为类,并将选择器更改为$('.add tag')
<td><a href="/tagging" class="button icon tag add-tag" type="submit">Add tag</a></td>
是的,它有效:-)你无法想象这对我有多大帮助。。。再见
<td><a href="/tagging" class="button icon tag add-tag" type="submit">Add tag</a></td>
$('.add-tag').click(function(e) {
...
});