Giriş
(3)

Jquery sorusu(html kontrol gizleme)

coding4life
selamlar;aspx olan sayfamda bir jquery scripti mevcut, bu script bildiğimiz bir gridview ya da repeater gibi veri çekiyor, xml bir dosyadan. ve daha önceden oluşturmuş olduğum sütunlara verileri yazıyor bir for döngüsü ile.fakat sıkıntım şu; verileri yazdığımda kimi veriler boş gelebiliyor, yani hep
selamlar;

aspx olan sayfamda bir jquery scripti mevcut, bu script bildiğimiz bir gridview ya da repeater gibi veri çekiyor, xml bir dosyadan. ve daha önceden oluşturmuş olduğum sütunlara verileri yazıyor bir for döngüsü ile.

fakat sıkıntım şu; verileri yazdığımda kimi veriler boş gelebiliyor, yani hepsi dolu olacak diye bir kaide yok maalesef. ve bu verilerin bazılarını düz metin olarak, bazılarını ise html buttonlara yazıyorum. veri olmadığında düz metinler haliyle yok gözüküyor fakat butonlar olduğu gibi duruyor, haliyle rezalet bir görüntü.

yapmak istediğim şey, öyle bir script lazım ki bana veri geldikten sonra html buttonlara baksın ve butonların değerleri boş ise bunların visible değerlerini false yapsın.

not: html butonları runat="server" şeklinde yapıp .net tarafından ulaşma şansım yok, zira script içinde tanımladığım için butonları ulaşamıyorum.

yardımcı olan çıkarsa çok sevinicem, taklalar parendeler meşaleler falan. :)
0
coding4life
(26.09.10)
veriyi bastiktan sonra soyle bir fonksiyonu cagirabilirsin en sonda.

button'larin hepsinin ortak class'i olsun. (ben burda button yazdim yine)

function check()
{
$('.button').each(function() {
if($(this).val() == "") $(this).remove();
});
}

ya da istersen su sekilde de kontrol edebilirsin,

if($(this).val().length < 1) $(this).remove();

umarim dogru anlamisimdir istedigin seyi.
0
fader
(26.09.10)
evet anlatmaya çalıştığım tam olarak buydu, teşekkürler yardımın için :) fakat hiç bir tepki vermedi fonksiyonu denediğimde, her iki şekilde denememe rağmen.

esasında sabahtan beri uğraşıyorum ve istediğim şeye yakın çalıştırabildiğim tek kod şu oldu :

<script type="text/javascript">
function toggleVisibility(controlId) {
var control = document.getElementById(controlId);
if (control.value == "" )
control.style.visibility = "hidden";

}
</script>

button un onclick eventından gelen control idsini yakalayıp visible false yapıyor, ama istediğim şeyden uzak açıkcası. butonların hepsinin script içinde tanıtılmış olması bu çalışmama durumuna neden olabilir mi acaba.
0
🌸coding4life
(26.09.10)
oncelikle,
madem jquery kullaniyorsun, neden hala klasik kontroller ile calisiyorsun? onu bir degistir.
sonra, senin fonksiyonunu her buton icin teker teker calistirman lazim. cunku id ile aliyorsun. bir sayfada ayni id'li birden fazla element olursa sikinti yasarsin. o yuzden dedim button'larin hepsinin ortak class'i olsun. <input type="button" class="ahmet" ... /> gibi.
jquery ile data'yi alip isledigin fonksiyonun sonunda benim yazdigimi cagirirsan yeterli olacaktir. denedim 100% calisiyor!
0
fader
(26.09.10)
buraya yazılanların hakları Sir Anthony Hopkins'e aittir.
yazan eden compumaster, ilgilenen eden fader
modere edenler basond, compumaster, fraise, kibritsuyu, rakicandir
bu sitede yazılanların hiçbiri doğru değildir. site içeriği küçükler için sakıncalı olabilir. yazılardan yazarları sorumludur. kaynak göstermeden alıntılanamaz. devlet tarafından atanmış bir kurumun internet üzerinde kimin hangi bilgiye ulaşıp ulaşamayacağına karar vermesi insan haklarına aykırıdır. web siteleri kullanıcıların istekleri doğrultusunda bağlandıkları yerlerdir. kullanıcılar isterlerse bir web sitesine bağlanmayabilirler. bu güçleri ve imkanları mevcuttur. bir kullanıcı bir siteye bağlanmak istiyorsa bu onun tercihi ve hakkıdır. bağlanmak istemiyorsa bu yine onun tercihi ve hakkıdır. halkın kendisine hizmet etmesi için görevlendirdiği kurumlar hadlerini aşıp halka neye ulaşıp ulaşmayacağını bilmeyen cahil cühela muamelesi edemezler. ebeveynlerin çocuklarını sakıncalı içeriklerden koruması için çok sayıda bedava ve ücretli yazılım mevcuttur. bu yazılımlar bir web tarayıcısını kullanmaktan daha karmaşık teknik bilgi gerektirmemektedir. devletin milletini küçük düşürmesi ve ebleh yerine koyması yasaktır.