Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: jquery и select
 
 автор: tonechka   (26.02.2011 в 22:24)   письмо автору
 
 

Есть форма , в которой есть элемент селект. Как мне сделать проверку, выбрано ли какое-либо значение из селекта, с помощью jquery. Ниже код, где динамически формируется селект.

$spis=mysql_query("select * from Courses order by title");//выбираем все курсы из еленинга
                    
                    echo "<div class='select_mylti'><select id='course'  size='10' multiple='multiple' name=cid[]>";
                    
                    connect_bd($dbhost, $dbuser, $dbname, $dbpass);
                    $moodle_query=mysql_query("select * from {$dbprefix}course"); 
                                        
                    while ($res=mysql_fetch_array($moodle_query))
                        {$mass[]=$res['fullname'];}
        
                    while ($spisok=mysql_fetch_array($spis)) 
                        {
                            $titel=$spisok['Title'];
                            $tit=$titel;
                            //$tit=iconv("cp1251","UTF-8",$titel);
                            $cid=$spisok['CID'];
                                if (!(in_array($tit,$mass)))
                                    { echo "<option value=$cid>$titel</option>";}     
                        
                                else 
                                {
                                    $count=mysql_fetch_array(mysql_query("select count(id) as count from {$dbprefix}resource where course=(select id from {$dbprefix}course where fullname='$tit')"));
                                    
                                    if ($count['count']==0) 
                                        {echo "<option value=$cid>$titel</option>";}
                                }     
                        
                        }          
                    echo "</select>";
                    echo "</div>";


А вот кусочек с jquery:

$(document).ready( function() {
                
  $("#botton").click( function(err) {
    //создаем переменные и заносим в них текущее состояние полей

var wtuchka= $('#course option:selected').val();
if(wtuchka == ''){

       alert("Значение не выбрано");
     }
 
   });
                
});


Нужно чтобы, если не выбрано ни одного элемента, то чтоб появлялась ошибка!!!!

  Ответить  
 
 автор: Абырвалг   (26.02.2011 в 23:03)   письмо автору
 
   для: tonechka   (26.02.2011 в 22:24)
 

>"Нужно чтобы, если не выбрано ни одного элемента, то чтоб появлялась ошибка!!!!"

Вы хотите невозможного.
Не бывает в селекте такого, чтобы ни один из опшенов не был выбран.
Даже если вы циклом пройдётесь по всем опшенам селекта и каждому укажете selected = false, то самый первый (с индексом = 0) опшен всё равно автоматом получит значение selected = true.

Так что... не ставьте перед собой невыполнимых задач.

  Ответить  
 
 автор: tonechka   (26.02.2011 в 23:07)   письмо автору
 
   для: Абырвалг   (26.02.2011 в 23:03)
 

Почему? Ведь у меня же селект со множественным выбором, а не где выпадающий список. Поэтому по умолчанию у меня не выбрано ни одного элемента, пока я не щелкну по нему.

  Ответить  
 
 автор: Абырвалг   (26.02.2011 в 23:29)   письмо автору
 
   для: tonechka   (26.02.2011 в 23:07)
 

Сорри, multiple не заметил.

На чистом яваскрипте всё просто: проверка циклом по всем опшенам их selected с выходом break при первом же отмеченном - и это "норма". Либо проход всего цикла - тогда "ошибка".
Как это перевести на порно-лохо-язык Jquery - я не знаю.

  Ответить  
 
 автор: Usta   (27.02.2011 в 00:19)   письмо автору
 
   для: tonechka   (26.02.2011 в 22:24)
 

<div id="push">Кнопка</div>


<script type="text/javascript">
    $(document).ready(function() { 
        function check_select(){
        var select = $("#course option:selected").attr("value");
        if(typeof(select) ==  "undefined") {
            alert("Параметр не выбран");
            return false;
        }
        return select;
    }
    $("#push").click(function(){
        var value = check_select();
    });

    });
</script>

  Ответить  
 
 автор: tonechka   (27.02.2011 в 00:50)   письмо автору
 
   для: Usta   (27.02.2011 в 00:19)
 

спасибо, помогло, но не совсем))) У меня появляется теперь сообщение об ошибке, при нажатии на кнопку! Но когда я нажимаю ОК, в этом сообщении об ошибке, то скрипт дальше работает(((( а ведь не должен же.. А получается, что он передает пустые параметры

  Ответить  
 
 автор: Абырвалг   (27.02.2011 в 01:11)   письмо автору
 
   для: tonechka   (27.02.2011 в 00:50)
 

А открыть консоль ошибок и почитать - чего там про ошибку пишут - это никак?

  Ответить  
 
 автор: tonechka   (27.02.2011 в 01:18)   письмо автору
 
   для: Абырвалг   (27.02.2011 в 01:11)
 

Вообще то сообщение об ошибке, это алерт, я имела ввиду!!!! Это так, если что на всякий случай!!!! А алерт мне как раз и нужен!!!!

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования