У меня есть php-файл «Критерии» для отображения набора html множественных выпадающих списков, которые можно использовать для создания критериев для запроса.
У меня есть php-файл «Результаты», который создает оператор SQLв соответствии с выбранными параметрами из различных выпадающих меню, выполняет запрос, а затем отображает результаты этого запроса.
Я хотел бы пропустить необходимость перезагрузить и отобразить все html для каждого выпадающего списка выбора, поскольку каждый из них содержитсотни вариантов.Ajax был моим решением для этого.
Для каждого выпадающего списка событие onchange вызывает мой javascript, который выполняет Ajax-вызов к моей странице «Results».Эта страница «Результаты» получит значение каждого выпадающего списка, используя $ _POST ['htmlSelectDropdownID'].
Теперь, когда я реализовал Ajax, проблема в том, что выбранное значение из выпадающих списков непопадаю в мой файл результатов ... и я могу только предположить, что это потому, что HTML никогда не перезагружался ...
У кого-нибудь есть предложения, как решить эту проблему?
Спасибо,
------------------------ код --------------------------
Мой Javascript / Ajax
function AjaxPostback(){
/*if (str=="")
{
document.getElementById("divTest").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("divResults").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","Results.php", true); //?q="+str,true);
xmlhttp.send();}
Только 1 из раскрывающегося списка на моей странице
Group By <select id="selGroupBy" name="selGroupBy" onchange="AjaxPostback()">
<option value='Department' <?php if ($_POST['selGroupBy'] == 'Department') echo 'selected="selected"'; ?>>Department</option>
<option value='Store' <?php if ($_POST['selGroupBy'] == 'Store') echo 'selected="selected"'; ?>>Store</option>
<option value='Date' <?php if ($_POST['selGroupBy'] == 'Date') echo 'selected="selected"'; ?>>Date</option>
<option value='Size' <?php if ($_POST['selGroupBy'] == 'Size') echo 'selected="selected"'; ?>>Size</option>
</select>
- HTML, который создаетКритерии (выпадающий html) и div (divResults), который является innerHTML, заполняется javascript
<div>
<?php include ("Criteria.php"); ?>
<div class="divResults" id="divResults">
</div>
</div>
При вызове мой файл Results.php просто проверяет документ на наличие таких вещей, как .. if (isset ($ _ POST)['selDepartment']) && ($ _POST ['selDepartment'] == "320 носков") {$ sqlSelect. = $ _POST ['selDepartment'];}
Я также попытался использовать $ _GET вместо$ _POST к rполучить значение, тот же результат .. = \