Привет всем!Сразу извиняюсь если ошибся разделом, просто не до конца понял в чём ошибка в скриптах:или в запросе к базе, или в JS.
Проблема в следущем:Имеется банальный селект Страна-Город.Куда-то теряется первый элемент в каждом массиве.К примеру если выбираешь в первом селекте Казахстан, то нет в списке опшенов второго селекта города Астана,если выбрать Россию, то нет во втором списке города Ижевск, а если выбрать Польшу, то вообще ничего нет, так как в списке городов только один польский город - Варшава.
Вот index:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Untitled Document</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="selects.js"></script>
</head>
<body>
<form action="#" method="get">
<p>Страна</p>
<select name="country_id" id="country_id">
<option value="0">- выберите страну -</option>
<option value="1">Казахстан</option>
<option value="2">Россия</option>
<option value="3">Польша</option>
</select>
<p>Регион:</p>
<select name="region_id" id="region_id" disabled="disabled">
<option value="0"> </option>
</select>
</form>
</body>
</html>
Вот get_regions:
<?php
$db = mysql_connect ("localhost","alex","12345");
mysql_select_db("optoviki",$db);
mysql_set_charset('utf8');
$country_id = @intval($_GET['country_id']);
$result2 = mysql_query ("SELECT `id`,`title` FROM `gorod` WHERE `id_strana` = $country_id",$db);
$myrow2 = mysql_fetch_array($result2);
$regions = array();
while($myrow2=mysql_fetch_array($result2)) {
$regions[] = $myrow2;
}
$result = array('type'=>'success','regions'=>$regions);
/*
* Упаковываем данные с помощью JSON
*/
print json_encode($result);
?>
Вот selects.js:
$(document).ready(function () {
$('#country_id').change(function () {
var country_id = $(this).val();
if (country_id == '0') {
$('#region_id').html('');
$('#region_id').attr('disabled', true);
return(false);
}
$('#region_id').attr('disabled', true);
$('#region_id').html('<option>загрузка...</option>');
var url = 'get_regions.php';
$.get(
url,
"country_id=" + country_id,
function (result) {
if (result.type == 'error') {
alert('error');
return(false);
}
else {
var options = '';
$(result.regions).each(function() {
options += '<option value="' + $(this).attr('id') + '">' + $(this).attr('title') + '</option>';
});
$('#region_id').html(options);
$('#region_id').attr('disabled', false);
}
},
"json"
);
});
});
Плюс ко всему тут же в корне лежит Jquery.js.
Вопрос:кто-нибудь может подсказать куда теряется первый элемент массива?