首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >范围(‘A’,'Z') jQuery问题

范围(‘A’,'Z') jQuery问题
EN

Stack Overflow用户
提问于 2011-03-20 11:09:35
回答 2查看 497关注 0票数 0

我有一个PHP函数,它为字母表中的每个字母创建一个< li >。

代码语言:javascript
运行
复制
<?php foreach(range('A','Z') as $letter) : ?>
<li><input type="button" id="alpha-button" value="<?php echo $letter; ?>"></li>
<?php endforeach; ?>

这会生成一个没有问题的列表。但是,当我尝试应用以下函数时,它只在生成第一个按钮时运行。

代码语言:javascript
运行
复制
$(function(){
    $("#alpha-button").click(function(){
        alert($(this).val());
    });
})
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-03-20 11:11:21

您正在使用id选择器,并且id在DOM中必须是唯一的。

您应该将其更改为使用class而不是id,如下所示:

代码语言:javascript
运行
复制
<?php foreach(range('A','Z') as $letter) : ?>
<li><input type="button" class="alpha-button" value="<?php echo $letter; ?>"></li>
<?php endforeach; ?>

和JS:

代码语言:javascript
运行
复制
$(function(){
    $(".alpha-button").click(function(){
        alert($(this).val());
    });
})
票数 4
EN

Stack Overflow用户

发布于 2011-03-20 11:12:35

因为每个<li>都有相同的id。

您可以将其更改为

代码语言:javascript
运行
复制
<?php foreach(range('A','Z') as $letter) : ?>
<li><input type="button" class="alpha-button" value="<?php echo $letter; ?>"></li>
<?php endforeach; ?>

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

https://stackoverflow.com/questions/5366523

复制
相关文章

相似问题

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