- Регистрация
- 5 Окт 2007
- Сообщения
- 1.064
- Реакции
- 200
- Автор темы
- Заблокирован
- #1
добрый день, есть меню на ajax но столкнулся с проблемой, помогите решить. Суть такова, есть 3 селект списка, естественно все они зависимы. то есть выбираем первый, идет обращение к php скрипту и генерируется второй, так же и с третим. все это в форме вместе с другими полями, отправляем записываем в бд. затем нужно будет отредактировать эту запись. как сделать так что б на странице редактирования сразу отображались выбранные пункты.
файлы getCities.php getCities2.php возвращают вот в таком формате
знакомый говорил что можно при помощи window.onload но что то ничего не нарыл
помогите, заранее спасибо
PHP:
<script type="text/javascript">
var ajax = new Array();
function getCityList(sel)
{
var countryCode = sel.options[sel.selectedIndex].value;
document.getElementById('dhtmlgoodies_city').options.length = 0; // Empty city select box
if(countryCode.length>0){
var index = ajax.length;
ajax[index] = new sack();
ajax[index].requestFile = 'getCities.php?countryCode='+countryCode; // Specifying which file to get
ajax[index].onCompletion = function(){ createCities(index) }; // Specify function that will be executed after file has been found
ajax[index].runAJAX(); // Execute AJAX function
}
}
function getCityList2(sel)
{
var countryCode2 = sel.options[sel.selectedIndex].value;
document.getElementById('dhtmlgoodies_city2').options.length = 0; // Empty city select box
if(countryCode2.length>0){
var index = ajax.length;
ajax[index] = new sack();
ajax[index].requestFile = 'getCities2.php?countryCode2='+countryCode2; // Specifying which file to get
ajax[index].onCompletion = function(){ createCities2(index) }; // Specify function that will be executed after file has been found
ajax[index].runAJAX(); // Execute AJAX function
}
}
function createCities(index)
{
var obj = document.getElementById('dhtmlgoodies_city');
eval(ajax[index].response); // Executing the response from Ajax as Javascript code
}
function createCities2(index)
{
var obj = document.getElementById('dhtmlgoodies_city2');
eval(ajax[index].response); // Executing the response from Ajax as Javascript code
}
</script>
$_sql = "SELECT * FROM country ORDER BY namecountry ASC";
$_query_country = mysql_query($_sql) or die("Нмогу получить страны!");
echo "<select id=\"dhtmlgoodies_country\" name=\"dhtmlgoodies_country\" onchange=\"getCityList(this)\"><option value=\"\">--Страна--</option>";
while($_result = mysql_fetch_array($_query_country))
{
echo "<option value=\"$_result[id_country]\">$_result[namecountry]</option>";
}
<select id="dhtmlgoodies_city" name="dhtmlgoodies_city" onchange="getCityList2(this)">
<option value="">--Направление--</option>
</select>
<select id="dhtmlgoodies_city2" name="dhtmlgoodies_city2">
<option value="">--Курорт--</option>
</select>
файлы getCities.php getCities2.php возвращают вот в таком формате
PHP:
echo "obj.options[obj.options.length] = new Option('$_result_region[name_region]','$_result_region[id_region]');\n";
знакомый говорил что можно при помощи window.onload но что то ничего не нарыл
помогите, заранее спасибо