4 Nisan 2009 Cumartesi
Asp. Net Usercontrol de javascript kullanımı
User controllere yazdığımız javascript kodları, masterpage de herzaman tam randımanla çalışmaz. Herzaman diyorum çünkü yazılan koda göre değişkenlik gösterir. Özellikle usercontrolleri ayrı bir klasörde tutuyorsak (örn. usercontrol klasörü), script kodlarında sorunla karşılaşırız. Bunun nedeni ise script kodları kendisini oluşturduğunuz klasör içinde çalıştırır fakat masterpage ana dizinde olduğundan aynı kodları algılayamayabilir.
Ben aşağıda örnek bir javascript uygulaması yazdım, siz kendinize uygun olacak şekilde düzenlersiniz.
Öncelikle bir tane usercontrol oluşturuyoruz ve script kodumuzu yazıyoruz. Aşağıda yazdığım örnekte ben bir tane usercontrol klasörü oluşturdum. Yeniden hatırlatmakta yarar var eğer usercontrolü bir klasör içinde değilde ana dizinde oluşturacaksanız (ki bu çok mantıksız bir şey) zaten sorunla karşılaşmazsınız.
Gelelim koda... işin püf noktası ClientID olayıdır.
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Haber_Paneli.ascx.cs" Inherits="usercontrols_Haber_Paneli" %>
script type="text/javascript"
function getir(resim)
{
document.getElementById('<%=manset.ClientID %>').src= resim;
}
function yazi(baslik,ozet)
{
document.getElementById('<%=icerik1.ClientID %>').innerHTML = baslik;
document.getElementById('<%=icerik2.ClientID %>').innerHTML = ozet;
}
/script
Burada kullandığımız ClientID, script imizin anadizinde çalışmasını sağlar.