2016-04-14 17 views
0

Webforms ASP.NET'i ilgili bir Güncelleştirme Paneli ile kullanıyorum. Ben jquery için çok yeni, yani elimde ne var. Dinamik bir liste öğesiyle pageload'a yüklenmiş bir onay kutum var. Aşağıdaki kodla dinamik olarak her birinin yanında bir düğmenin nasıl ekleneceğini anladım.Dinamik Olarak Birden Çok Düğme Ekleme Jquery'de belirli bir parametreyi geçirmesi gerekiyor OnClick

$("INPUT[id^='DefaultContent_checkLstWebObjects_").each(function() { 

         $(this).after('<input type="button" id="BlueButton" value=">" class="peek" onclick="Selectall()"/>'); 
        }); 

Yani artık her düğme aynı işlevi çağırmak, ancak benzersiz parametre her zaman geçirmek için ihtiyacı olacaktır, ben 3 düğme olduğunu varsayalım. Bu sahip olduğum kurulumla mümkün mü? Teşekkürler.

cevap

1

İşlev çağrısı içindeki onay kutusunun kimliğini - bu benzersiz olabilir. TÜM düğmelerinize aynı kimliği veriyorsunuz, çünkü> 1 olacağı için sınıf adı gibi bir şey kullanmalısınız, ör. Daha soyut veri niteliklerini, CSS (istediğini) işlemek serbesttir böylece

$("INPUT[id^='DefaultContent_checkLstWebObjects_").each(function() { 
    $(this).after('<input type="button" id="BlueButton" value=">" data-id="'+$(this).attr("id")+'" class="peek"/>'); 
}); 
$(".peek").on("click",function(){ 
    Selectall($(this).data(id)); 
}); 
0

Sen, işlev çağrısı üzerine parametresi, DOM düğümü onay kutusu nesnesi gönderiyor bu hibe alan olarak this geçebilir. Bu şekilde, işlevinde istediğiniz herhangi bir parametreyi işleyebilirsiniz. Think gibi bir şey: Anlayacağınız gibi

$("INPUT[id^='DefaultContent_checkLstWebObjects_").each(function() { 
 
    
 
    // Passing this through the function call 
 
    $(this).after('<input type="button" id="BlueButton" value=">" class="peek" onclick="Selectall(this)"/>'); 
 
}); 
 

 
// Your function 
 
function Selectall(checkbox_obj){ 
 
    
 
    // Handling attributes data, ID in this example 
 
    var checkbox_id = $(checkbox_obj).attr('id'); 
 
    
 
    // ----------------------------------- 
 
    // Your business rules here... 
 
    // ----------------------------------- 
 
}

+0

, benim kimlikleri hepsi aynı. Hepsi "BlueButton". Öyleyse neyi geçebileceğim, eşsiz olabilir? – Monzingo

+0

Bu tuhaflık çünkü ana koddaki değeri aldığınızda, çalışma zamanındaki ID'ler birikimli olarak _1 ve _2 gibi birikmiş – RPichioli

İlgili konular