【问题标题】:disable element in jquery禁用jQuery中的元素
【发布时间】:2014-08-29 17:24:02
【问题描述】:

我的demo 在这里。

$(document).ready(function () {
    $('.abc').click(function () {
        $('#test').after('<textarea cols="125" rows="2" id="pReply" style="background-color:red;"></textarea>')
    });
});

当我点击“ABC”文本时,它会附加一个文本区域。附加后,我想禁用文本“ABC”。这意味着,它不应附加多个文本框。

【问题讨论】:

  • 请记住,在使用 JSFiddle 时,您必须包含您的小提琴的代码(因为 @Jeff B 很乐意为您编辑),正如错误消息之前告诉您的那样提交这个问题。
  • 谢谢。我收到了错误消息,但无法理解。
  • 没问题。欢迎来到本站!

标签: jquery css class


【解决方案1】:

使用.one() 绑定事件。一旦事件第一次运行,jQuery 会自动为你解除它与元素的绑定。

$(document).ready(function () {
    $('.abc').one('click', function () {
        $('#test').after('<textarea cols="125" rows="2" id="pReply" style="background-color:red;"></textarea>')
    });
});

参考:.one()

DEMO

【讨论】:

  • @user3894236 没问题。很高兴它对你有效。祝你好运,编码愉快! :)
【解决方案2】:

您可以使用 unbind 函数,在调用执行后解除点击事件的绑定

JS代码

$('.abc').click( function()
     {
         $('#test').after('<textarea cols="125" rows="2" id="pReply" style="background-color:red;"></textarea>' );
         $(this).unbind('click');                
      }

Working Fiddle

更多关于unbind函数

【讨论】:

    【解决方案3】:

    或者你可以使用这种类型的功能

    <script>
            var isClicked = false;
            function appendIt(){
                   if(!isClicked){
                           //append text area
                   }
                   isClicked = true;
            }
    </script>
    
    <h1 onclick="appendIt()"> chabadabada </h1>
    

    【讨论】:

      【解决方案4】:

      你可以在触发事件后使用one$(this).off(event)进行绑定。 像这样:

      $(document).ready(function(){
          $('.abc').click( function(event){
              $('#test').after('<textarea cols="125" rows="2" id="pReply" style="background-color:red;"></textarea>' );
              $( this ).off( event );
          });
      });
      

      或:

      $(document).ready(function(){
          $('.abc').one('click',function(){
              $('#test').after('<textarea cols="125" rows="2" id="pReply" style="background-color:red;"></textarea>' );
          });
      });
      

      希望有用!

      【讨论】:

        【解决方案5】:

        只需用jquery去掉点击功能

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2013-12-09
          • 1970-01-01
          • 2022-01-20
          相关资源
          最近更新 更多