2013-09-19 11 views
0

У меня есть dropdownbox, у которого есть значения, назначенные ему, и я пытаюсь получить это значение и выполнить функцию .load и вернуть значение, но это не получилось поэтому возвращаемое значение всегда является верхней частью раскрывающегося списка, независимо от того, что выбрано.jQuery только передача dropdownbox самое высокое значение

Вот мой JQuery

<script> 
$(document).ready(function(){ 
    var inputField= $('#dateslot').val(); 
    $("#dateslot").change(function(){ 
    $("#timeslot").load('check.php?dateselect='+inputField); 
    }); 
}); 
</script> 

Хотя вот мой выпадающем DropDownBox'е

<select name="dateslot" style="margin-bottom: 20px;" id="dateslot"> 
    <option value="notselected">SELECT A DATE</option> 
    <?php 

    for($i = 1; $i/31 != 1; $i++){ 
    $date1 = str_replace('-', '/', $vdate); 
    $date2 = date('Y-m-d',strtotime($date1 . "+".$i." days")); 

    $readdate = date('d F Y', strtotime($date2)); 
    echo '<option value="'.$date2.'">'.$readdate.'</option>'; 
    } 
    ?> 
    </select> 

в моем check.php я получил dateselect с помощью $ _GET и выяснили, что независимо от того, что я выбираю, результат всегда не выбрано (это первый вариант)

Я попытался удалить этот код, показанное значение остается первым в списке, я попытался вынуть php и использовать только o так же результат. любая помощь = /?

ответ

2

Вы получаете значение при загрузке страницы, но не обновляете ее при ее изменении. Я только что переехал в inputField декларацию внутри обработчика события изменения ...

$(document).ready(function(){ 
    $("#dateslot").change(function() { 
     var inputField= $(this).val(); 
     $("#timeslot").load("check.php?dateselect=" + inputField); 
    }); 
}); 
0

Вы только получаете значение на начальной странице загрузки. Попробуйте это вместо этого

<script> 
$(document).ready(function(){ 
    $("#dateslot").change(function(){ 
    var theField = $(this).find('option:selected').val(); 
    $("#timeslot").load('check.php?dateselect='+theField); 
    }); 
}); 
</script> 

Это значение выбирается при выборе варианта, а затем передает его функции загрузки.

0

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

<script> 
$(document).ready(function(){ 
    $("#dateslot").change(function(){ 
    var inputField= $('#dateslot').val(); 
    $("#timeslot").load('check.php?dateselect='+inputField); 
    }); 
}); 
</script> 
Смежные вопросы