Html - CSS - XML - JavaScript - Ajax
Açılır Listede Diğer Seçeneği Nasıl Yapılır?
Açılır Listede Diğer Seçeneği Nasıl Yapılır?
-
merhaba arkadaşlar. bunu google'da "html custom input in dropdown" olarak aradım ama bulamadım.
örneğin araba markaları ile ilgili açılır listede "Ford" "BMW" "Renault" "Diğer" olacak. Diğere tıklayınca kullanıcı istediği veriyi girip gönderecek.
nasıl yapılır bu iş? aslında diğer optionı ekleyip onclick hide this show this şeklinde bir şey düşündüm.
yani "diğer"e tıklayınca açılır liste kaybolacak yerine bir text girişi gelecek fakat böyle olmamalı diye düşündüm hem de bazı sorunlar oluşturacak öyle olursa.
sorun 1. diğere tıklayınca açılır liste gidecek kullanıcı vazgeçip listeye bakmak istese bakamayacak. (tabi onun için de yazarız ayarlarız da gereksiz bir iş gibi)
sorun 2. diğere tıklayınca görünecek olan text girişinin id'si vesaire farklı olacak ondan dolayı girişler farklı olacak. (gerçi diğere bi değer atarım formun gideceği yerde eğer değer o değerse text girişine bak diyebilirim ama daha uygun bir yolu olabilir diye düşünüyorum...)(formu ajax ile gönderiyorum o yüzden id)
kendi çapımda sorunumu çözdüm gibi ama bence bu kadar uzun bir yol değildir ya eminim ki çok basit bir yolu vardır ben bilmiyorum....
varsa uygun ve kısa çözümünü bilen paylaşabilir mi?
cevaplar için teşekkür ederim...
-
seceneklere diger secenegini ekle, value olarak `-1` ver (kullanmayacagin bisey olsun)
jquery ekle sayfaya (diger konunu da gordum, niye eklemiyosun anlamiyorum)
sonra sununla change oldugunda value ya bak, eger -1 se comboboxu gizle text boxu gorunur yap : https://api.jquery.com/change/
sunucu tarafinda da comboboxa bak, degeri -1 se diger kutusundaki metni al degilse comboboxtaki degeri al
-
nurulmac11 bunu yazdı
seceneklere diger secenegini ekle, value olarak `-1` ver (kullanmayacagin bisey olsun)
jquery ekle sayfaya (diger konunu da gordum, niye eklemiyosun anlamiyorum)
sonra sununla change oldugunda value ya bak, eger -1 se comboboxu gizle text boxu gorunur yap : https://api.jquery.com/change/
sunucu tarafinda da comboboxa bak, degeri -1 se diger kutusundaki metni al degilse comboboxtaki degeri al
takıntı işte hocam :) şuan bir bilgim yok jQuery ile ilgili. en yakın uygun zamanda öğrenmeyi düşünüyorum aslında ama şimdilik bilmiyorum.
-
eski konularımı kontrol ederken bu sorumu gördüm. çözdüm ben bu sorunu şu şekilde:
örnek html:
<div> <select name="secilen"> <option value="a">a</option> <option value="b">b</option> <option value="c">c</option> <option onclick="newoption(this)">*new*</option> </select> </div> <script> function newoption (self) { self.parentNode.parentNode.innerHTML = '<input type="text" name="secilen">'; } </script>
-
kofcu bunu yazdı
eski konularımı kontrol ederken bu sorumu gördüm. çözdüm ben bu sorunu şu şekilde:
örnek html:
< name="secilen"> < value="a">a < value="b">b < value="c">c *new*// '; } // ]]>
olduda "diğer" seçeneğinden vazgeçti, sayfayı yenilemesi mi gerekiyor? :)
-
-
http://jsfiddle.net/9sM4d/18/