Я использую следующие фрагменты кода для заполнения раскрывающегося списка при загрузке страницы из содержимого в XML-файле ...
foreach (System.Xml.XmlNode item in root.SelectNodes(@"/markers/marker"))
{
string tmpValue = item.Attributes["location"].Value + "#" + item.Attributes["lat"].Value + "#" + item.Attributes["lng"].Value;
destination.Items.Add(new ListItem(item.Attributes["location"].Value, tmpValue));
tmpNCount++;
}
У меня есть кнопка, которую я планировал использовать для поиска.
защищенный void qsearch_Click (отправитель объекта, EventArgs e)
{
try
{
string httpPath = Convert.ToString(UrlMaker.httpURL());
//sysmessage.Text = "TEST" + destination.SelectedValue.ToString();
string[] Split = destination.SelectedValue.ToString().Split(new Char[] { '#' });
string tmpLocation = Convert.ToString(Split[0]);
string tmpLat = Convert.ToString(Split[1]);
string tmpLon = Convert.ToString(Split[2]);
string tmpRad = radius.SelectedValue.ToString();
Response.Redirect(httpPath + "search.aspx?func=longlat&country=gbr&lng="+tmpLon+"&lat="+tmpLat+"&rad="+tmpRad+"&txt="+tmpLocation+"&test=1");
}
catch(Exception ex) { Response.Write("Error on Redirect"); }
}
Поиск выполняется, но кровавый предмет возвращает значение первого элемента в раскрывающемся списке, а не того, который я выбираю.
Надеюсь, я упускаю что-то действительно очевидное.
Спасибо
решаемые
Уничтожил функцию щелчка как бессмысленную и использовал следующее.
if (IsPostBack)
{
try
{
string fdata = Request.Form["dest"];
string[] Split = fdata.ToString().Split(new Char[] { '#' });
string tmpLocation = Convert.ToString(Split[0]);
string tmpLat = Convert.ToString(Split[1]);
string tmpLon = Convert.ToString(Split[2]);
string tmpRad = radius.SelectedValue.ToString();
Response.Redirect(httpPath + "search.aspx?func=longlat&country=gbr&lng=" + tmpLon + "&lat=" + tmpLat + "&rad=" + tmpRad + "&txt=" + tmpLocation + "&test=1");
}
catch(Exception ex) { Response.Write("Error on Redirect" + ex.ToString()); }
}