首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery -每个/单击功能不起作用

jquery -每个/单击功能不起作用
EN

Stack Overflow用户
提问于 2010-12-21 16:22:14
回答 5查看 57.1K关注 0票数 12

编辑:这是可行的,但不确定为什么?

代码语言:javascript
复制
  $('button').each(function() {
    $(this).bind(
        "click",
        function() {
            alert($(this).val());
        });
  });

我不知道为什么这不管用..。现在,我只是尝试用按钮值输出一个警告,但它在我的页面上不起作用。我在Firebug中没有看到任何控制台错误,也看不到阻止它工作的任何东西。

我的HTML看起来如下:

代码语言:javascript
复制
<table id="addressbooktable">
<thead>
    <tr>
        <th>Name</th>
        <th>Action</th>
    </tr>
</thead>

<tbody>
    <tr>
        <td>7892870</td>
        <td><button id="button-20" class="custom-action" value="XY89" name="info">Click</button></td>
    </tr>

    <tr>
        <td>9382098</td>
        <td><button id="button-21" class="custom-action" value="XY544" name="info">Click</button></td>
    </tr>

    <tr>
        <td>3493900</td>
        <td><button id="button-22" class="custom-action" value="XY231" name="info">Click</button></td>
    </tr>
</tbody>
</table>

代码是这样的:

代码语言:javascript
复制
  $('button').each(function() {
    $(this).click(function() {
      alert($(this).val());
    }
  });

但是,点击它一点作用都没有吗?我是不是用错了?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-12-21 16:24:40

您可以使用这样的单击事件绑定所有按钮,不需要遍历它们。

代码语言:javascript
复制
$(function(){
    $("button").click(function() {
        alert($(this).attr("value"));
    });
});

但更精确的选择可能是:

代码语言:javascript
复制
$(function(){
    $("button[id^='button-'").click(function() {
        alert($(this).attr("value"));
    });
});
票数 20
EN

Stack Overflow用户

发布于 2010-12-21 16:27:18

您缺少了一个);,并确保代码位于document.ready处理程序中,如下所示:

代码语言:javascript
复制
$(function() {
  $('button').each(function() {
    $(this).click(function() {
      alert($(this).val());
    }); //missing ); here!
  });
});

这样,只有那些<button>元素在DOM中才能运行,$('button')才能找到它们。此外,您还可以在一组元素上运行.click(),如下所示:

代码语言:javascript
复制
$(function() {
  $('button').click(function() {
      alert($(this).val());
  });
});
票数 7
EN

Stack Overflow用户

发布于 2015-07-06 15:03:47

你错过了)

代码语言:javascript
复制
$('button').each(function(){
            $(this).click(function(){
                alert($(this).val());
            });
        });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4501430

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档