Forum

Klasik ASP ve <s...
 
Bildirimler
Hepsini Temizle

Klasik ASP ve <select><option> kullanımı sorunu

2 Yazılar
2 Üyeler
0 Reactions
1,140 Görüntüleme
(@EnesHarun)
Gönderiler: 37
Trusted Member
Konu başlatıcı
 

Merhaba arkadaşlar,

Klasic ASP ile hazırlamış olduğum bir sayfada 3 adet <select> option kutularım var ve bir de <input type="file"...> şeklinde resim seçip yükleyebileceğim bir kutu. şimdi gelelim sorunuma:

Select kutucuğundan ders seçiyorum ve sayfa yenilenip alttaki kutuya o derse ait üniteleri getirmesi gerekirken Ders seçimi tekrar sıfırlanıyor ve seçtiğim ders kayboluyor. Aslında sorunun nereden kaynaklandığını biliyorum ama çözümü bilemiyorum.

Aağıdaki kod parçasında FORM'a ( enctype="multipart/form-data") eklemezsem dropdownlar doğru çalışıyor fakat kaydet butonuna bastığımda hata verip illa enctype="multipart/form-data" kodunu istiyor. Bunu eklediğimde dropdownlar doğru çalışmıyor. Select kısmındaki ( onchange="this.form.action=''; javascript:this.form.submit()") kodu ve onun altındaki Script ile seçili kaydı sabit kılıp diğer dropdownda da yeni listeyi oluşturuyorum. Acil desteğinize ihtiyacım var.

<form name="frm1" method="post" action="soru_ekleislem.asp" enctype="multipart/form-data">
<table style="border:none;margin-top:10px">
<tr>
<td align="center" style="font-size:25px"><b>Soru Ekle</b></td>
</tr>
<tr>
<td align="center">
<%
response.write(request.cookies("hatali"))
Response.Cookies("hatali").Expires = Now() - 1
%>
</td>
</tr>
<tr>
<td align="left" style="padding-top:10px">
<%
sql="select * from sdERS order by DERS ASC"
set sorgu=Baglanti.execute(sql)
sql2="select count(*) as sayi from SDERS"
set sorgu2=Baglanti.execute(sql2)
%>
<select name="isim" id="isim" style="width:240px;height:25px; font-size:16px;color: gray;" onchange="this.form.action=''; javascript:this.form.submit()">
<option value="0">Ders seç</option>
<%
do while not i=cint(sorgu2.fields("sayi"))
%>
<option value="<%response.Write sorgu("ID")%>"><%response.Write sorgu("DERS")%></option>
<%
i=i+1
sorgu.movenext
loop
%>
</select>
<script>
//Get select object
var objSelect = document.getElementById("isim");
//Set selected
setSelectedValue(objSelect, "<%=MenuId%>"); // gelen index değeri 10
function setSelectedValue(selectObj, valueToSet) {
for (var i = 0; i < selectObj.options.length; i++) {
if (selectObj.options.value== valueToSet) { // value suna göre seçer
selectObj.options.selected = true;
return;
}
}
}
</script>
</td>
</tr>

İyi çalışmalar.

 
Gönderildi : 13/11/2015 16:10

(@ZaferDANYILDIZ)
Gönderiler: 44
Trusted Member
 

Merhaba, ders seçim şeklini birkaç şekilde yapabilirsin.

1- Ders seçimi için ayrı bir sayfa ata.

Sayfana bir iframe koy. Javascript ile ifarme sayfanı ders-sec.asp?dersid=select-option-id şeklinde yönlendirebilirsin. Böylece anasayfan değişmez. İlgili sayfa id ye göre dersleri getirir ve yine javascript add(option) ile ana sayfana geri yükler.

 

2- İlk işlem olarak select içinde ders seçimini yaptır. Dönen form değerinden ders-id'sini al. Option listesinde verileri yazdırırken formdan aldığın ders-id=vericektigin-ders-id eşit ise option satırını "select" ifadesini yazdır. Böylece seçtiğin ders sayfa değiştikten sonrada tekrar seçili olur.

 

Umarım doğru anlamışımdır.

 
Gönderildi : 14/11/2015 04:57

Paylaş: