javascript
  • jquery
  • html
  • loops
  • actionlistener
  • 2015-09-26 233 views -2 likes 
    -2
    var color_arr = ["red","blue","red","blue","red","blue"]; 
    var html = ""; 
    for(var i = 0; i < color_arr.length; i++) { 
        html += "<button id='user_color_"+i +"' class='btn' style='background:"+ color_arr[i] +"'></button>"; 
    } 
    $("#somelement").append(html);  
    

    因此,如果用戶點擊一個按鈕,則該按鈕必須被刪除。如何在點擊時刪除按鈕?

    回答

    3
    $("#somelement button").on("click",RemoveElement); 
    
    function RemoveElement() { 
        $(this).remove(); 
    }; 
    

    http://jsfiddle.net/yoxkscpm/

    0
    $("#somelement").on('click','.btn',function(){  
    var btnId = $(this).attr("id"); 
    $("#"+btnId).remove();  
    }); 
    

    但你最好添加新的類,它改變.btn。

    +1

    爲什麼你會用id,當你已經有對象本身? –

    0

    你的代碼有一些變化。您的var html變量已被刪除。

    您可以使用$(...).click(...

    var color_arr = ["red","blue","red","blue","red","blue"]; 
     
    
     
    for(var i = 0; i < color_arr.length; i++) { 
     
        $("#somelement").append("<button id='user_color_"+i +"' class='btn' style='background:"+ color_arr[i] +"'>Button</button>"); 
     
    } 
     
    $("#somelement button").click(function(){ 
     
        $(this).remove(); 
     
    });
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> 
     
    
     
    <div id="somelement"></div>

    相關問題