Barış
26 Haziran Cuma 2009 17:41
#1
Selam mehmet, karakter saydırma uygulamasını uyguladım,Aynı form içindeki 1 textbox`a uyguluyorum sorunsuz, fakat 2.texboxt`a uygulamaya çalışıyorum olmuyor?, aynı şekilde 2.textbox`un id degerini tb1 veriyorum olmuyor ? nasıl yapabilirim birden fazla textbox için? , kolay gelsin iyi çalışmalar
Merhaba. Öncelikle farklı textboxlara aynı id`yi verirsen çalışmaması normaldir. Çünkü her element için id değeri unique değer olmalıdır. Bunun için textboxlara aynı css class`ı vererek class`a göre saydırma yapabilirsin. Veya her textbox için farklı id verip o id`lere göre ayrı ayrı saydırma kodu yazmalısın.
Merhaba.Hocam ilk örnek için,
masterpage a bağlı sayfa içine TextBox koydum ve multiline olarak.
ama bu kod çalışmıyor.
Bunun yerine input şeklinde text konulduğunda doğru çalışıyor neden acaba?
Bir de burda yaptığınız gibi text in multiline olmasını istiyorum.Yani TextBox ın multiline özelliği var ama jquery çalışmıyor onun için.
Eğer input kullanırsak bunun multiline nasıl aktif edilir?bir de input text in maxlength in kullanımı nedir ve TextBox ile input:text arsındaki fark nedir?
Son olarak input:text de nasıl kod bölümünde o textin degerini alabiliyoruz.(script kısmında değil)
yani texbox da textbox1.text şeklinde ama input:text degerini nasıl kod tarafında alabiriz.Cünkü veritabanı ile bagantı kurmam gerekiyor.runat=server eklesek mantıklı olurmu?yani buara benim yazdığım şeyleri nasıl veritabanına kaydedebiliyorsunuz?Simdiden tesekkurler.
Merhaba. Öncelikle bu sorun herkes tarafından dile getiriliyor ama ortada bir sorun yok. Biraz dikkatsizlikten oluyor. Masterpage olan bir sayfada yer alan kontrollerin ID'leri çakışma olmaması için değiştirilir. Buna göre jQuery kodlaması yapılırken bu durum göz önüne alınmalıdır. Aksi halde jQuery selector kodunda belirtilen element aslında sayfada olmayan bir element olmuş oluyor. jQuery kodlamasında bu sorunu engellemek için server kontrollerini şu şekilde kullanabiliriz. $("#<%= TextBox1.ClientID %>")... gibi. Umarım anlatabilmişimdir. Bunun dışında ise TextBox ile input:type arasında pek fark yok. Eğer input:type elementine runat=server özelliği verirsen TextBox olmuş olur. Ancak TextBox .Net içinde tanımlanmış ve hazır olarak gelen bir kontroldür. Render edildiğinde input:type olarak render edilir. Eğer TextBox kontrolüne multiline özelliği verilirse textarea olarak render edilir. Tüm bunları daha iyi anlamak için bunları kullandığın sayfaların kaynak kodlarını incelemelisin.
İkinci olarak bahsettiğin konuda ise cevabı kendin vermişsin. Bu türlü kullanımda elementlere runat="server" özelliği atamakla beraber server kontrolü olarak belirlemiş oluyoruz ve CodeBehind tarafında bu kontrole ID değeri ile erişebiliyoruz. Değerini alırken de ElementID.Value gibi bir özellik yeterli oluyor. Ancak bir önceki yorumumda belirttiğim gibi eğer script kodlama yapılacaksa runat="server" olan kontrollerde selector kısmına dikkat etmeliyiz.
Merhaba.Cevap verdiğiniz için tesekkurler.İkinci cevabınız icin bu sitedeki yorum yazılan kısma firebug ile baktım burda textarea kullanılmış ama runat=server eklenmemiş.runat=server eklemeden nasıl bu yorumları veritabanına kaydedebiliyorsunuz?Yani siz burda nasıl bir mantık izlediniz?
Tekrar merhaba. runat="server" tagı kontrol render edildiğinde kalkar. Yani server taraflı tagdır ve kullanıcı tarafında bu tag görülmez. Söylediğin konuda ise kullandığım textarea'da runat="server" yok. Burada jQuery Ajax ile yorumları alıyorum. Değerleri alırken de script kullanarak geçerli elementin değerini alıp, jQuery Ajax fonksiyonun data özelliği ile beraber sunucuya aktarıyorum. Bu yapı için sitemdeki Ajax ile ilgili yazıları ve örnekleri inceleyebilirsin.
Doğruyu söyle twitteri sen mi yaptın? :D
@Bahadır, keşke öyle olsaydı. :D
kardeşim sende cevher var..tivitir dan iyisini yaparsın inşallah..bende çok fikirler ama senn gibi coder değilim malasef..
@alperen, yorumun için teşekkür ederim ama olanı değil de olmayan birşeyi yapmayı daha çok isterim. Sırf kod yazmak veya sırf fikir sahibi olmak yeterli değil. Ya ikisi de olacak ya da ikisini bilenler bir araya gelecek. Bunlardan birini yakalaman dileğiyle.