PDA

View Full Version : سوال: پرکردن یک Drop Down توسط Ajax



rash44
یک شنبه 13 مهر 1393, 16:28 عصر
سلام
دو تا dropdown برای استان و شهرستان ها دارم که توسط ajax با انتخاب استان ، نام شهرستان های استان مورد نظر را در drpdown دیگیری نمایش میدم . توی ie همه چیز درسته اما توی mozila فیلد شهرستان ها مقدار دهی دهی میشه و شهرستان ها نمایش داده میشه اما بعد از submit نمودن فرم ، فیلد شهرستان ها فاقد محتوا و خالی هست .


<script>
function getXMLHTTP() { //fuction to return the xml http object
var xmlhttp=false;
try{
xmlhttp=new XMLHttpRequest();
}
catch(e) {
try{
xmlhttp= new ActiveXObject("Microsoft.XMLHTTP");
}
catch(e){
try{
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(e1){
xmlhttp=false;
}
}
}

return xmlhttp;
}



function getcity(strURL) {

var req = getXMLHTTP();

if (req) {

req.onreadystatechange = function() {
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
document.getElementById('city').innerHTML=req.resp onseText;
} else {
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}

}
</script>


صفحه اصلی


<table border="0" width="100%" id="table1">
<tr>
<td>
<div align="center">
<table border="0" width="100%" dir="rtl" id="table2">
<tr>
<td dir="rtl" bgcolor="#F9F9F9" width="25%" height="30">
<font face="Tahoma" style="font-size: 9pt" color="#333333">
نام استان
</font>
<font face="Tahoma" color="#CC0000" style="font-size: 9pt">
<span lang="fa">
*</span><span lang="en-us"> </span> </font>
<font face="Tahoma" style="font-size: 9pt" color="#333333">
:</font></td>
<td dir="rtl" bgcolor="#F9F9F9" width="25%" height="30">
<select size="1" name="ostan" dir="rtl" class="in" onChange="getcity('CreateRostaLst.php?id='+this.value)">
<option value="1">تهران</option>
<option value="2">کرج</option>
<option value="3">فارس</option>
</select>
</td>
<td dir="rtl" bgcolor="#F9F9F9" width="25%" height="30">
<font face="Tahoma" style="font-size: 9pt" color="#333333">
نام شهرستان
</font>
<font face="Tahoma" color="#CC0000" style="font-size: 9pt">
<span lang="fa">
*</span><span lang="en-us"> </span> </font>
<font face="Tahoma" style="font-size: 9pt" color="#333333">
:</font></td>
<td dir="rtl" bgcolor="#F9F9F9" width="25%" height="30">
<div id="city">
<select size="1" name="city" dir="rtl" class="in">
<option selected value="">انتخاب شهرستان</option>
</select></div></td>
</tr>
</table>
</div>
</td>
</tr>
</table>


کد php


<?php
$ClientString = $_SERVER['HTTP_USER_AGENT'];
if(!isset($_SESSION['user']) || $_SESSION['ClientStr'] != md5($ClientString))
{
header("location:index.php");
}
//
$id=$_GET['id'];
$q="SELECT `id`,`name` FROM `city` WHERE `ostan`='$id'";
$r=mysql_query($q);
//
?>
<select name="city">
<option selected value="">انتخاب</option>
<? while($row=mysql_fetch_assoc($r)) { ?>
<option value="<?=$row['id']?>"><?=$row['name']?></option>
<? } ?>
</select>

bagherok
یک شنبه 13 مهر 1393, 17:28 عصر
responseText بینش فاصله هست.درستش کنید.
تست کردم مشکلی نداشت.
فایل ضمیمه کردم

rash44
دوشنبه 14 مهر 1393, 11:56 صبح
responseText بینش فاصله هست.درستش کنید.
تست کردم مشکلی نداشت.
فایل ضمیمه کردم

سلام
کد شما درست کار میکنه اما کد من باز هم جواب نمیده

rash44
دوشنبه 14 مهر 1393, 15:04 عصر
لطفا بررسی کنید

bagherok
دوشنبه 14 مهر 1393, 20:27 عصر
بررسی کردم
اما بیشتر دقت کنید:لبخندساده:

rash44
سه شنبه 15 مهر 1393, 07:07 صبح
بررسی کردم
اما بیشتر دقت کنید:لبخندساده:

مشکل برطرف نشده
124304

bagherok
سه شنبه 15 مهر 1393, 10:56 صبح
تصحیح شد...