Hər kəsi salamlayıram. Sualım: 2 multiple select box var. Yanaşıdır. Birinin option larını digərinə keçirmək olur. Bu zaman ikinci selectbox da əlavə olunan optionlar avtomatik selected olmuş olur. Amma 2ci boxdan option geri qaytaranda selected olmuşlar itir. Mən isə POST nan bu 2ci box-da qalan optionları ötürməliyəm. Bunun üçün də Submit basanda gərək bu selectbox da olan option-lar avtomatik selected olsun. Aydın olmazsa sual verə bilərsiniz,daha ətraflı izah edim. Öncədən təşəkkür.
Verilmiş cavablar və yazılan şərhlər (9 cavab var)
0
Uzun sözün qısası: JQuery ilə bu selectbox-un bütün optionlarını seçmək lazımdır.
Test1
Test2
…
0
upss, kodlar yeyildi 🙂
0
function multipleSelectOnSubmit()
{
$("#perm").each(function(){
$("#perm option").attr("selected","selected");
});
}
Bele bir şey eləsən…
İkinci selectbox-daki optionları sen yenə də seçdir. Amma eyni zamanda bir hidden field içine meselen ‘;’ ilə ayrılmış value-larını qeyd et. POST edəndə o hidden field içindəkilər gedsin. Səhifə yüklənəndə isə yenə bir loop ilə hidden field içindəki value-lara əsasən ikinci selectbox-daki optionları seçərsən.
Yəni biraz string parsing kodu yazmalısan.
0
Düzü qeyd etmişəm ki, artıq problem həll edilib. Kodu da yazmışam bura. Amma kod “yeyildiyin”dən görsənmir. Amma bu hidden field məsələsi çox yerinə düşdü.Elə indi başqa məsələ üzərində düşünürdüm.Onu hidden field ilə həll etmək olar.
Qeyd: Yuxarıda qeyd etdiyim jQuery funksiyası select daxilində bütün optionları seçir. Kiməsə lazım olarsa istifadə edə bilər.
1
Bəlkə məsələnin praktiki yönümün bir az açıqlayasız? o halda alternativ həll yolları da tapa bilərik ola bilsin. Yani konkret nə seçilir və post-la nə ötürülür?
0
Iş burasındadır ki, artıq problemi həll etmişəm. Cavabı və sualın özünü də yazmışdım. Sadəcə sayt kodları “yedi” və nəticədə mən özümözümlə danışmış kimi oldum =) Sadəcə hər hansı event zamanı multiple atributlu select optionlarının hamısı selected ( seçilmiş) olmalı idi. Bunu jQuery də necə etmək olar soruşurdum.
1
Mənə də bənzər bir şey lazım oldu. Belə bir kod tapdım. Bəlkə bir nəfərə lazım olar.
Səhifə kodu:
1
2
3
jQuery kodu:
//run on save numbers button clicked
$(‘#savebutton’).click(function(){
//only do something if numbers are selected
if( $(‘#multiselect :selected’).length > 0){
//build an array of selected values
var selectednumbers = [];
$(‘#multiselect :selected’).each(function(i, selected) {
selectednumbers[i] = $(selected).val();
});
//post data to handler script. note the JSON.stringify call
$.ajax({
url: ‘my_handler_script.php’,
data: {‘selectednumbers’:JSON.stringify(selectednumbers)},
type: ‘POST’,
success: function(data) {
alert(‘Success!’);
}
});
}
});
Bu kodla əlaqəli önəmli yerləri və ətraflı oxumaq üçün: http://www.codeunit.co.za/2010/03/01/jquery-get-all-selected-values-or-text-from-a-multiple-select-listbox/
0
Təşəkkür. Çox zaman lazım ola bilər.
Sual verin
Cavab verin