Получить значение выпадающего списка из базы данных на основе даты, которую я выбрал, используя ajax

Мне нужно динамически изменять значения выпадающего списка на основе значения даты с помощью AJAX.

Это мой код

    <div class="span3">
<label>Bill Date
<div class="span12">
<div class="input-append date" id="dp2" data-date-format="yyyy-mm-dd">
<input class="span6" type="text" readonly="readonly" name='billdate' value="<?php echo $date1; ?>"/> <span class="add-on" disabled><i class="splashy-calendar_day" ></i></span>
</div>
</div>
</label>
</div>
<div class="span2" id="txtHintbill" style=" margin-left:85px;">
<label>Mode:</label>
<select name="mode" class="span10" onChange="billno(this.value)">
<option value="">Select Mode</option>
<option value="CASH" selected>CASH</option>
<option value="CREDIT">CREDIT</option>
<!--  <option value="CHEQUE">CHEQUE</option> -->
</select>
</div>

Мой код скрипта

  <script>
function billno(str)
{
var xmlhttp;
if (str=="")
{
document.getElementById("").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("txtHintbill").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","billno.php?q="+str,true);
xmlhttp.send();
}
</script>

И мой файл billno.php

<?php
include"config.php";
$m=$_GET["q"];
?>
<?php
$con=mysql_query("SELECT billno FROM printhub1 WHERE date1='$m' AND cash_detail='Not Received' ORDER BY billno");
$num=mysql_num_rows($con);
if($num==1)
{
?>
<select name="billno" id="billno" >
<?php

while($row=mysql_fetch_array($con))
{
$billno=$row['billno'];
?>
<option value="<?php echo $billno; ?>" <?php echo $billno; ?> ><?php echo $billno; ?></option>
<?php
}
?>
</select>
<?php
}
?>

Я хотел бы заменить содержимое тега выбора.

Я уже пытался извлечь значение и показать в текстовом поле, но я не знаю, как получить полные значения раскрывающегося списка.

-3

Решение

Некоторые предложения …

  1. Реализуйте AJAX с помощью jQUERY (поскольку вы уже пометили пост с помощью jQuery, мне интересно, почему вы его не используете). Это сделает весь xmlhttp вам легче billno() функция.

  2. Если вы хотите динамически изменить раскрывающийся список на основе значения даты, введенного в текстовое поле, вам нужно вызвать onChange() в поле ввода даты (<input class="span6" type="text" name='billdate') — потому что когда это значение в этом поле ввода изменяется, вы запускаете AJAX.

  3. Напишите строку <option value="<?php echo $billno; ?>" <?php echo $billno; ?> ><?php echo $billno; ?></option> как показано ниже:

<option value="<?php echo $billno; ?>"><?php echo $billno; ?></option>

  1. Вам нужен механизм, чтобы обновить <SELECT> основываясь на ответе на ваш звонок AJAX. Я предлагаю вам использовать JQuery для обновления <select>, Пример,

    $ .post («billno.php», {q: str}, функция (данные) {
    $ («# txtHintbill»). html (data);
    });

Приведенный выше код будет выполнять запись AJAX, а также обновлять HTML-код div ID txtHintbill с результатами с сервера.

Надеюсь, что это дает вам некоторое направление для продвижения вперед.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]