Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

22.10.2009, 19:25
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 113
Провел на форуме: 184002
Репутация:
3
|
|
Помогите c jquery
усть код! типа http://www.lasso.pro/selectCombo/
Как можно его дописать что бы выводились постепенно <div> тоесть страна->Область->город
Код HTML:
<html>
<head>
<title></title>
<script src='../js/jquery.js' type='text/javascript'></script>
<script type="text/javascript">
$(document).ready(function(){
showCountriesById($('#countryId').val());
});
function showCountriesById (val) {
$.ajax({
type: "POST",
url: "ajax.php",
data: "countryId="+val,
success: function(html){
$("#cityContainer").html(html);
}
});
}
</script>
</head>
<body>
<select name="countryId" id="countryId" onchange="showCountriesById(this.value)">
<?php
//Выводишь страны
if (isset( $countryArr))
{
?>
<?php
foreach ( $countryArr as $s) {
?>
<option value="<?=$s['id']?>"><?=$s['strana']?></option>
<?php
}
?>
<?php
}
?>
</select>
<div id="cityContainer"> </div>
</body>
</html>
ajax.php
Код HTML:
<?php
$countryId = $_POST['countryId'];
//Выбираешь из бд города и заносишь в массив
$html .= '<select name="cities">';
while ($row = mysql_fetch_array($res)) {
$html .= '<option value="'.$row['id'].'" >'.$row['gorod']'.</option>';
}
echo $html;
?>
|
|
|

22.10.2009, 21:41
|
|
Новичок
Регистрация: 20.01.2009
Сообщений: 27
Провел на форуме: 47153
Репутация:
7
|
|
Передавай разные значения. Типа отправляешь $_POST['страна'] на пхп проверяешь если $_POST['страна']== чемуто то echo (Форма для выбора региона с функцией аякса)
с этой формы отправляешь уже $_POST['регион'] в Пхп проверяешь теперь $_POST['страна']== чемуто то echo (Форма для выбора города с аяксом).
Кажеться уже чето такое было! Могу попробывать без jquery написать!
|
|
|

23.10.2009, 08:52
|
|
Участник форума
Регистрация: 08.11.2006
Сообщений: 113
Провел на форуме: 184002
Репутация:
3
|
|
А еще кто то может подсказать????
|
|
|

23.10.2009, 09:19
|
|
Участник форума
Регистрация: 11.10.2006
Сообщений: 134
Провел на форуме: 3607644
Репутация:
235
|
|
Добавь еще одну функцию и див для регионов.
PHP код:
<html>
<head>
<title></title>
<script src='../js/jquery.js' type='text/javascript'></script>
<script type="text/javascript">
$(document).ready(function(){
showCountriesById($('#countryId').val());
});
function showCountriesById (val) {
$.ajax({
type: "POST",
url: "ajax.php",
data: "countryId="+val,
success: function(html){
$("#cityContainer").html(html);
}
});
}
function showDistrictById (val) {
$.ajax({
type: "POST",
url: "ajax.php",
data: "districtId="+val,
success: function(html){
$("#districtContainer").html(html);
}
});
}
</script>
</head>
<body>
<select name="countryId" id="countryId" onchange="showCountriesById(this.value)">
<?php
//Выводишь страны
if (isset( $countryArr))
{
?>
<?php
foreach ( $countryArr as $s) {
?>
<option value="<?=$s['id']?>"><?=$s['strana']?></option>
<?php
}
?>
<?php
}
?>
</select>
<div id="cityContainer"> </div>
<div id="districtContainer"> </div>
</body>
</html>
ajax.php
PHP код:
<?php
require_once '../config/db.php'; //подключаешь бд
if($_POST['countryId']) {
$docId = $_POST['countryId'];
$query = "..."; //запрос
$res = mysql_query($query);
$html .= '<select name="cities" onchange="showDistrictById(this.value)">';
while ($row = mysql_fetch_array($res)) {
$html .= '<option value="'.$row['id'].'" >'.$row['gorod']'.</option>';
}
$html .= '</select>';
echo $html;
}
if($_POST['districtId']) {
//делаешь запрос на выборку регионов и так же, как и страны выводишь в селекте
}
?>
Последний раз редактировалось diGriz; 23.10.2009 в 09:30..
|
|
|

23.10.2009, 09:25
|
|
Участник форума
Регистрация: 07.09.2008
Сообщений: 139
Провел на форуме: 351188
Репутация:
65
|
|
Очень люблю jquery
могу предложить просто добавить красивости в код.
Код:
function showCountriesById (val) {
$("#districtContainer").html('<img src="/loader.gif" />'); // гифка которая появляется пока идёт запрос.
$.post('ajax.php',{countryId:val},function(data){$("#districtContainer").html(data);})
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|