Jquery - невозможно получить предупреждение после изменения опции выбора

0

Я пытаюсь получить предупреждение о замене опции select box.

Здесь я добавил имя класса css в каждый selectbox при повторении его в цикле, и, наконец, я вызвал функцию jquery с помощью селектора классов.

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

  <table style="border:1px solid red;" width="650px">
<tr style="border:1px solid red;">
<td">Status</td>
</tr>
<?php
$qry = "select *from tracker group by orderno";
$res = mysql_query($qry) or die(mysql_error());
while($data =  mysql_fetch_array($res))
{
?>
<tr style="border:1px solid red;">
<td  ><label onclick="show(this.id)" id=<?php echo $data['orderno'];?> > <?php echo $data[1]; ?></label></font></td>
<td  ><?php echo  $data['customername'];  ?></td>
<td align="center" style="border:1px solid red;"><?php  echo $data['noofbooks']; ?></td>
<td  ><?php echo $data['address']; ?></td>
<td  ><?php echo $data['mobileno'];  ?></td>
<td align="center" style="border:1px solid red;">

    <select name="status" class="selectboxid">  
<?php 
if($data['status']  == "despatch")
{
        echo '<option name="despatched" selected="selected" value="despatched"> Despatched </option>';
}
else
    {
    echo '<option name="despatched"   value="despatched"> Despatched </option>';
}
  if($data['status'] == "Pending")
{
        echo '<option name="pending" selected="selected" value="pending"> pending </option>';
}
else{
   echo '<option name="pending"  value="pending"> pending </option>'; 
}
  if($data['status'] == "deliver")
{
        echo '<option name="despatched" selected="selected" value="despatched"> Despatched </option>';
}
else
    {
    echo '<option name="despatched" value="despatched"> Despatched </option>';
}
  if($data['status'] == "partial")
{
        echo '<option name="partial" selected="selected" value="partial"> Partial </option>';
}
else
{
    echo '<option name="partial" value="partial"> Partial </option>';
}
 ?>

</select>
    </td>
</tr>
<?php
}
?>
</table>

И мой код jquery;

<script>
$(".selectboxid").change(function() { 
    alert("hi");
});
</script>
  • 0
    Вы пробовали обернуть использование jQuery в функцию $(document).ready() ? Часто это выполняется до того, как элемент существует, и не привязывается ни к чему. И поскольку вы спрашиваете о проблеме с jQuery (front end), вы не должны включать ваш PHP-код, а просто поле выбора и Javascript, который не работает должным образом. Также в идеале используйте что-то вроде jsFiddle для демонстрации проблемы.
  • 1
    Вы уверены, что включаете библиотеку jQuery?
Показать ещё 10 комментариев
Теги:

2 ответа

1
Лучший ответ

Возможно, вы связали событие слишком рано (до загрузки DOM). Просто поместите функцию jQuery в jQuery(function(){ }) как показано ниже.

для опционного следует использовать on вместо change, его рекомендуют стиль.

jQuery(function(){
   $(".selectboxid").on('change', function() { 
       alert("hi");
   });
});
  • 0
    +1 за ваш ответ. Не чувствую плохо. Будь счастлив
  • 0
    LOL большое спасибо.
-1

используйте это, не нужно $ (document).ready...

<script>
$(document).on("change",".selectboxid",function(){
    alert("hi");
});
</script>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню