jquery - 如何使用 Jquery 动态选择特定链接?

标签 jquery ruby-on-rails jquery-ui jquery-ui-dialog

我正在尝试选择某个链接并打开一个对话框。

  $('#edit').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 + ' #content');
      },
      close: function() {
        $('#dialog-form').remove();
      }
    });
    dialog_form.dialog('open');
    e.preventDefault();
  });

在具有多个编辑链接的页面上

<a href="articles/edit/1" id="edit">edit</a>
<a href="articles/edit/2" id="edit">edit</a>

但该代码仅在只有一个编辑链接时才有效。

如何动态选择我点击的确切链接?

最佳答案

ID 属性需要唯一,即无效的 HTML。浏览器将始终返回第一个出现的位置。

您可以使用类名来代替。

<a href="articles/edit/1" class="edit">edit</a>

而且,您需要将选择器修改为 .edit 才能按类名查找元素。

$('.edit').click(function(e) {
  ... 
});

从 HTML5 开始,您还可以使用 data-* 属性。

关于jquery - 如何使用 Jquery 动态选择特定链接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14539403/

相关文章:

javascript - 回调引用本地化函数,因此未定义。解决方法?

ruby-on-rails - 迁移运行时在 db/structure.sql 上删除了 Postgresql 扩展

ruby-on-rails - AngularJs $http post请求将数据发送到rails Controller

javascript - 单击目标 ="_blank"链接时隐藏 jQueryUI 工具提示

jquery - 如何判断 jquery 对话框是否打开?

jquery - Firefox 中的切换功能出现问题(两个正在切换的 div 内有 wufoo 脚本)

javascript - 单选按钮在 jquery 弹出框中不起作用

javascript - Google Analytics 事件工作不一致

ruby-on-rails - 测量多线程环境中线程的执行时间

javascript - 如何从选择菜单中删除选项?