|
|
|
| Есть форма , в которой есть элемент селект. Как мне сделать проверку, выбрано ли какое-либо значение из селекта, с помощью 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("Значение не выбрано");
}
});
});
|
Нужно чтобы, если не выбрано ни одного элемента, то чтоб появлялась ошибка!!!! | |
|
|
|
|
|
|
|
для: tonechka
(26.02.2011 в 22:24)
| | >"Нужно чтобы, если не выбрано ни одного элемента, то чтоб появлялась ошибка!!!!"
Вы хотите невозможного.
Не бывает в селекте такого, чтобы ни один из опшенов не был выбран.
Даже если вы циклом пройдётесь по всем опшенам селекта и каждому укажете selected = false, то самый первый (с индексом = 0) опшен всё равно автоматом получит значение selected = true.
Так что... не ставьте перед собой невыполнимых задач. | |
|
|
|
|
|
|
|
для: Абырвалг
(26.02.2011 в 23:03)
| | Почему? Ведь у меня же селект со множественным выбором, а не где выпадающий список. Поэтому по умолчанию у меня не выбрано ни одного элемента, пока я не щелкну по нему. | |
|
|
|
|
|
|
|
для: tonechka
(26.02.2011 в 23:07)
| | Сорри, multiple не заметил.
На чистом яваскрипте всё просто: проверка циклом по всем опшенам их selected с выходом break при первом же отмеченном - и это "норма". Либо проход всего цикла - тогда "ошибка".
Как это перевести на порно-лохо-язык Jquery - я не знаю. | |
|
|
|
|
|
|
|
для: 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>
|
| |
|
|
|
|
|
|
|
для: Usta
(27.02.2011 в 00:19)
| | спасибо, помогло, но не совсем))) У меня появляется теперь сообщение об ошибке, при нажатии на кнопку! Но когда я нажимаю ОК, в этом сообщении об ошибке, то скрипт дальше работает(((( а ведь не должен же.. А получается, что он передает пустые параметры | |
|
|
|
|
|
|
|
для: tonechka
(27.02.2011 в 00:50)
| | А открыть консоль ошибок и почитать - чего там про ошибку пишут - это никак? | |
|
|
|
|
|
|
|
для: Абырвалг
(27.02.2011 в 01:11)
| | Вообще то сообщение об ошибке, это алерт, я имела ввиду!!!! Это так, если что на всякий случай!!!! А алерт мне как раз и нужен!!!! | |
|
|
|