minaalamshahi
دوشنبه 03 مرداد 1390, 18:46 عصر
با سلام
من یک COMBO برای استان دارم حال می خوام که برای پر کردن combo شهر برا اساس استان از اجاکس استفاده کنم و برای اینکار کد های زیر رو نوشتم اما ادامه اش رو نمیدونم.
اول اینها رو در صفحه default.aspx نوشتم:
<script language="javascript" type="text/javascript">
function onBodyLoad()
{
getCity(null);
}
function valid()
{
if( document.getElementById('Name').value=='' || document.getElementById('Family').value=='' || document.getElementById('Tel').value=='' || document.getElementById('Address').value=='' || document.getElementById('UserName').value=='' || document.getElementById('Password').value=='' || document.getElementById('Email').value=='' || document.getElementById('PostalCode').value=='' )
{
alert('لطفا اطلاعات را کامل وارد نمایید');
return false;
}
else
{
strVEmail='abcdefghijklmnopqrstuvwxyz1234567890-_.@';
strEmail=document.getElementById('Email').value;
for(intI=0;intI < strEmail.length ; intI++)
{
if(strVEmail.indexOf(strEmail.charAt(intI)) == -1)
{
alert('آدرس ایمیل درست وارد نشده است');
return false;
}
}
if(strEmail.indexOf('@') == -1 || strEmail.indexOf('.') == -1)
{
alert('آدرس ایمیل درست وارد نشده است');
return false;
}
return true;
}
}
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(StateId)
{
StateId=document.getElementById('SId').value;
var strURL="reqcity.aspx?SId="+StateId;
var req = getXMLHTTP();
if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4)
{
if (req.status == 200)
{
document.getElementById("CityTd").innerHTML=req.responseText;
}
else
{
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
</script>
///
<asp:DropDownList ID="SId" runat="server" Height="16px" Width="135px"
onchange="getCity(this)">
</asp:DropDownList>
///
بعد درصفحه reqcity اینها رو نوشتم
public partial class reqcity : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
String Box = Request.QueryString["SId"];
SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source=.;Initial Catalog=dbtest;Integrated Security=True";
SqlDataAdapter sda = new SqlDataAdapter("select NAME from tbls where ID=" + Box,con);
DataSet ds = new DataSet();
sda.Fill(ds, "tbl");
}
}
حالا نمیدونم چطور شهر رو برگردونم به combo شهر در فرم default
من یک COMBO برای استان دارم حال می خوام که برای پر کردن combo شهر برا اساس استان از اجاکس استفاده کنم و برای اینکار کد های زیر رو نوشتم اما ادامه اش رو نمیدونم.
اول اینها رو در صفحه default.aspx نوشتم:
<script language="javascript" type="text/javascript">
function onBodyLoad()
{
getCity(null);
}
function valid()
{
if( document.getElementById('Name').value=='' || document.getElementById('Family').value=='' || document.getElementById('Tel').value=='' || document.getElementById('Address').value=='' || document.getElementById('UserName').value=='' || document.getElementById('Password').value=='' || document.getElementById('Email').value=='' || document.getElementById('PostalCode').value=='' )
{
alert('لطفا اطلاعات را کامل وارد نمایید');
return false;
}
else
{
strVEmail='abcdefghijklmnopqrstuvwxyz1234567890-_.@';
strEmail=document.getElementById('Email').value;
for(intI=0;intI < strEmail.length ; intI++)
{
if(strVEmail.indexOf(strEmail.charAt(intI)) == -1)
{
alert('آدرس ایمیل درست وارد نشده است');
return false;
}
}
if(strEmail.indexOf('@') == -1 || strEmail.indexOf('.') == -1)
{
alert('آدرس ایمیل درست وارد نشده است');
return false;
}
return true;
}
}
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(StateId)
{
StateId=document.getElementById('SId').value;
var strURL="reqcity.aspx?SId="+StateId;
var req = getXMLHTTP();
if (req)
{
req.onreadystatechange = function()
{
if (req.readyState == 4)
{
if (req.status == 200)
{
document.getElementById("CityTd").innerHTML=req.responseText;
}
else
{
alert("There was a problem while using XMLHTTP:\n" + req.statusText);
}
}
}
req.open("GET", strURL, true);
req.send(null);
}
}
</script>
///
<asp:DropDownList ID="SId" runat="server" Height="16px" Width="135px"
onchange="getCity(this)">
</asp:DropDownList>
///
بعد درصفحه reqcity اینها رو نوشتم
public partial class reqcity : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
String Box = Request.QueryString["SId"];
SqlConnection con = new SqlConnection();
con.ConnectionString = "Data Source=.;Initial Catalog=dbtest;Integrated Security=True";
SqlDataAdapter sda = new SqlDataAdapter("select NAME from tbls where ID=" + Box,con);
DataSet ds = new DataSet();
sda.Fill(ds, "tbl");
}
}
حالا نمیدونم چطور شهر رو برگردونم به combo شهر در فرم default