select и передача параметра
Релиб
Форумы       Участники    Календарь    Кто он-лайн?
Добро пожаловать, гость ( Вход | Регистрация )
        



select и передача параметра Expand / Collapse
Автор
Сообщение
01.04.2007 12:02
новичок

новичокновичокновичокновичокновичокновичокновичокновичок

участник
Last Login: 24.05.2007 21:06
Сообщ.: 4, Visits: 53
Если поднималась тема такая, ткните носом...
Есть два select'а на страничке. Первый заполняется из базы. Второй заполняется при помощи хранимой процедуры, в которую передается, в качестве параметра, value первого select'а... Т.е., выбрали значение в первом, сформировалось содержимое второго и отобразилось.
Каким образом этот самый параметр передать? Кнопка рядом с select'ом неприемлема...
Спасибо.
Сообщ. #912090
03.04.2007 12:24
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 26.10.2007 16:04
Сообщ.: 159, Visits: 1 042
можно через XMLHttp, например вот так:

<select onchange="ChangeS1(this.value)">...</select>
<div id=divS2></div>
....
<script>
function ChangeS1(value)
/*
отправляет запрос скрупту getvalue.asp со значением первого селекта,
который должен сформировать второй селект.
*/
{
  var url = "getvalue.asp?value=" + value
  if (window.XMLHttpRequest)
  {
    req = new XMLHttpRequest();
    req.onreadystatechange = Change;
    req.open("GET", url, true);
    req.send(null);
  }
  else if (window.ActiveXObject)
  {
    req =  new ActiveXObject("Microsoft.XMLHTTP");
    req.onreadystatechange = Change;
    req.open("GET", url, true);
    req.send();
  }
}

function Change()
/* по лучает данные от  getvalue.asp и вставляет их в divS2*/
 {
  if (req.readyState == 4)
  {
    if (req.status == 200)
    {
      var divS2 = document.getElementById("divS2")
      var s = req.responseText
      divS2.innerHTML = s
    }
    else
    {
      alert("Не удалось получить данные");
    }
  }
}
</script>

пример не проверял-)

Сообщ. #912179
03.04.2007 16:41
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.12.2007 11:03
Сообщ.: 121, Visits: 1 203
можно проще, если не критично что страница просто перезагрузится

<form name="myformname" act="my.asp">
<select name="mytype1" onchange="document.all['myformname'].submit();">

<option value=ggg1>

<option value=ggg2>

<option value=ggg3>

</select>
</form>

и в скрипте на стороне сервера анализировать Request.Form("mytype1") (оно будет равно или "ggg1" или "ggg2" или "ggg3") и действовать

Сообщ. #912187
03.04.2007 16:43
Supreme Being

Supreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme BeingSupreme Being

участник
Last Login: 18.12.2007 11:03
Сообщ.: 121, Visits: 1 203
хотя и то и другое будет работать если включен javascript :)

а кнопочку рядом можно рисовать если скрипта на клиенте нет

Сообщ. #912188
« пред. тема | след. тема »


Эту тему читают Expand / Collapse
Посетители: 0 (0 гостей, 0 участников, 0 скрыт.участников)
Сейчас нет участников, просматривающих тему.
Модераторы: Alexey, boombastik, bazile, pl, Alexey Spirin

Время GMT +3:00, Сейчас 9:16