首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery绑定事件

jquery绑定事件
EN

Stack Overflow用户
提问于 2009-10-24 08:51:24
回答 1查看 329关注 0票数 1

html:

代码语言:javascript
复制
<ul>
    <li><input type="submit" id="myId" value="someVal"/>
</ul>

jQuery

代码语言:javascript
复制
$('ul').find('input[type="submit"]').click(function{
         alert('nasty alert')
         $(this).attr('id','newId');
});

$('input#newId').click(function(){
          $(this).hide();
});

好的,所以我的意图是在单击一次之后更改id,然后按下按钮来做其他事情(隐藏)。我也尝试过live()。在firebug中,id看起来已经改变了,但我第二次点击按钮时会触发同样的警告(“讨厌的警告”)。还有一些我使用的strange...if (),在鼠标右键上单击消失的按钮(就像它应该的那样)。有什么建议吗?谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-10-24 08:55:31

您基本上将一个click事件处理程序附加到同一个输入上两次。

没有理由附加两个事件处理程序,我已经更新了代码,所以使用了一个变量来跟踪。

编辑:修复了语法错误,现在使用了.data

代码语言:javascript
复制
<ul>
<form>
<input type=submit value=go>
</form>
</ul>
<script src=http://ajax.googleapis.com/ajax/libs/jquery/1.3/jquery.min.js></script>
<script>


    $('ul').find('input[type="submit"]').click(function() {
             if ( !$(this).data('_clicked') ) {
                 alert('nasty alert')
                 $(this).attr('id','newId');
                 $(this).data('_clicked', true);
             } else {
                 $(this).hide();
             }
             return false;
    });
</script>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1616629

复制
相关文章

相似问题

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