JQuery 属性 带通配符的选择器

JQuery property selector with Wildcard

我试图在单击网格视图中的 Up/Down 箭头后移动行索引,不幸的是,当我输入 Jquery 时,它似乎只能处理其中一个网格视图我的直放站。

我传递的用于获取行句柄的 ID 是:

$('#Repeater1_ctl16_MeetingSumaryGridview1 a.move').click(function () {

问题是 'ctl16' 会根据我从中选择箭头的 gridview 而变化,我想能够在这里放置一个通配符,它​​将获得我选择的箭头的 gridview 句柄。

下面是我的JQuery代码:

$(document).ready(function () {
   $('#Repeater1_ctl16_MeetingSumaryGridview1 a.move').click(function () {
      var row = $(this).closest('tr');
      if ($(this).hasClass('up')) {
          var headrChck = row.prev()
          if (headrChck[0].cells['1'].tagName != 'TH') {
              row.prev().before(row);
          }
      }
      else {
          row.next().after(row);
      }
  });
})

我尝试了很多我在网上找到的东西,但我似乎使用的所有通配符都没有句柄。

我想知道我是否可以得到一些关于此的 Help/Advice,不胜感激,提前谢谢你。

如果你查看 documentation 你会发现 ^$ 是 jQuery 中的通配符。

我认为你的情况应该是这样的:

$("[id^=Repeater1]").click(function () {
      var row = $(this).closest('tr');
      if ($(this).hasClass('up')) {
          var headrChck = row.prev()
          if (headrChck[0].cells['1'].tagName != 'TH') {
              row.prev().before(row);
          }
      }
      else {
          row.next().after(row);
      }
  });

TL;DR;

  • contains

  • 使用*
  • starts with

  • 使用^
  • end with

  • 使用$

注意比较区分大小写。