option value değerini dinleme
Bu sekilde urunler tablosundan ürün başlıklarını option value içine alıp seçim yapıyorum
ama şimdi ben bu seçimi nasıl dinletip urunler tablosundan yaptığım seçime göre ürünün kodunu (ukod) da getirtebilirim?
ürün baslığı | ürün kodu |
---|---|
stoktakiler | s00 |
gelecekler | g01 |
Dediğim gibi option value ile Stoktakileri seçtiğimde bana value değeri olarak altına s00 yazsınki ben de bunu başka değer ile birleştirip forma post edebileyim.
jquery ile mi yapılır hiç bilmiyorum. Yardımcı olur musunuz?
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (2)
Merhabalar,
jQuery & Ajax kullanarak dediğiniz işlemi yapabilirsiniz. Örneğin bizim x name'ine sahip bir select ve içinde optionlarımız olsun.
<select id="urunler" name="x">
<option value="a">A</option>
<option value="b">B</option>
<option value="c">c</option>
</select>
Siz istiyorsunuz ki kişi buradan bir seçim yaparsa, yaptığı seçime göre ürün kodunu getirsin.
Önce projeye jQuery'i dahil ediyoruz ve post işlemimizi yapıyoruz:
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$("select.x").on('change', function(){
var secilenurun = $(this).children("option:selected").val();
$.ajax({
type: 'POST',
url: 'ajax.php',
data: {'secilenurun':secilenurun},
success:function (data) {
$("#urunid").remove();
$("#urunler").after(data);
}
});
});
<script>
Burada dedik ki:
urunler selectinden bir urun seçilirse bunun value değerini al ve ajax.php'ye post et.
Ardından ajax.php'den dönen değeri #urunler id'sine sahip selectin arkasına yaz.
(Burada yer alan $urunid, ajaxtan göndereceğimiz kısım)
Ajax.php dosyası:
<?php
if(isset($_POST["secilenurun"])){
$id = $_POST["secilenurun"];
//Bu kısımda veritabanı işlemlerini yapıp o ürünün idsini çektirin ve
return "<input id='urunid' type='hidden' value='CEKILEN_URUN_ID'>";
//şeklinde return edin.
}
?>
Ajax kısmında yazan $("#urunid").remove(); kısmını yazmamın sebebi, olur da burada seçim yapan kullanıcı, fikrini değiştirip başka bir şey seçerse, daha önce seçip eklettiği #urunid inputunu sildirip yenisini yazdırmak.
Kolay gelsin,
Saygılarımla