0 / 0 / 1
Регистрация: 24.11.2010
Сообщений: 44
1

Передача параметров сценарию из select без кнопки сабмит

20.10.2011, 15:18. Показов 13417. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день.
Вот вернулся к пхп. Хоть и не ас в нем, но кое что было.
Просматриваю коды которые сам писал и волосы дыбом .
Думал куда вопрос пхп или явы скрипты.
Вобщем ежели не туда то простите братцы.

Задача:
<form method="post" action="snabbase.php" target="body">
<TD width="20%" valign="top">
<select >
<option selected value="hello">Поиск по городу</option>
<option value="moskov">moskow</option>
<option value="krasnodar">krasnodar</option>
</select>
</TD>
</form>

кнопки сабмит нет и не нужна. На изменении передать значение обработчику.
как это просто решить.
как то отсюда надо onchange="this.options[this.selectedIndex].value"
мудрил мудрил не намудрил.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
20.10.2011, 15:18
Ответы с готовыми решениями:

Передача параметров сценарию из onChange без перехода на новую страницу
При выборе даты переходит на новую страницу, а нужно чтобы данные обновлялись без перехода....

Передача параметров в тэг <SELECT>
Помогите пожалуйста, в данный код параметр Days передается через queryString, если вытаскивать...

Передача date параметров в SELECT
Доброе время суток! Не получается в SELECT передать параметры (Date) :cry: string sql =...

Передача параметров скрипту от кнопки
&lt;input type=&quot;submit&quot; value=&quot;Отправить&quot; class=&quot;but&quot; /&gt;&lt;br /&gt; В первом случае я понимаю кнопка...

13
12 / 12 / 3
Регистрация: 05.02.2010
Сообщений: 46
20.10.2011, 15:26 2
Jquery пойдет?
0
0 / 0 / 1
Регистрация: 24.11.2010
Сообщений: 44
20.10.2011, 15:44  [ТС] 3
Ну ниче себе, а проще не получится. )))
0
12 / 12 / 3
Регистрация: 05.02.2010
Сообщений: 46
20.10.2011, 15:56 4
Итак, если я правильно тебя понял...
index.php:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<html>  
<head>  
<meta http-equiv="Content-Type" content="text/html; Charset=UTF-8">  
<script type="text/javascript" src="jquery.js"></script>  
</head>
<body>
<form method="post" action="snabbase.php" target="body">
<TD width="20%" valign="top">
<select onchange='$.post("ajax.php", {param: this.options[this.selectedIndex].value},
                 function(data) {
                            alert(data);
                 }
            );'>
    <option selected value="hello" >Поиск по городу</option>
<option value="moskov">moskow</option>
<option value="krasnodar">krasnodar</option>
</select>
</TD>
</form>
</body>  
</html>
ajax.php
PHP
1
2
3
<?php
    echo $_POST['param'] . ' is selected';
?>
Это то, что надо, или я не понял задачу?
2
0 / 0 / 1
Регистрация: 24.11.2010
Сообщений: 44
20.10.2011, 16:06  [ТС] 5
Блин всетаки прийдется подкачивать jquery.js
Я его тогда , не осилил, и без него вопросов много.
Конечно со временем прийдется, но я только опять к пхп обратился после большого перерыва.
Хотелось простенько так.
Кнопка сабмит ну ни как не вяжется в конструкции.
Но спасибо.
Попробую твой сценарий.
Но хотелось бы найти решение проще. Должно же быть.

Добавлено через 13 секунд
Блин всетаки прийдется подкачивать jquery.js
Я его тогда , не осилил, и без него вопросов много.
Конечно со временем прийдется, но я только опять к пхп обратился после большого перерыва.
Хотелось простенько так.
Кнопка сабмит ну ни как не вяжется в конструкции.
Но спасибо.
Попробую твой сценарий.
Но хотелось бы найти решение проще. Должно же быть.
0
12 / 12 / 3
Регистрация: 05.02.2010
Сообщений: 46
20.10.2011, 16:11 6
Куда уж проще-то? Если нужно обработать данные на стороне сервера - это наиболее простой из наиболее эффективных. Хотя это только мое мнение, и оно ни к чему не обязывает :P
0
0 / 0 / 1
Регистрация: 24.11.2010
Сообщений: 44
20.10.2011, 16:18  [ТС] 7
Кстати это замечание, на стороне сервера это да, но думаю и сценарий у клиента был бы одна две строки.
Спасибо земляк.
0
12 / 12 / 3
Регистрация: 05.02.2010
Сообщений: 46
20.10.2011, 16:19 8
Ну а ты напиши конкретно, что тебе надо. Правда, сегодня вряд ли уже смогу ответить - завтра постараюсь
0
0 / 0 / 1
Регистрация: 24.11.2010
Сообщений: 44
20.10.2011, 17:37  [ТС] 9
Та вроде уж написал.
форма, в ней селект, при выборе значение отдавать должно пхп сценарию.
Кнопка сабмит проблему решает , но в дизайне и структуре не к месту, и зачем лишние движения мышкой делать.

обработчик basetown.php
<?php
if ( isset($_POST['xxxxxx']) && ($_POST['xxxx']=="krasnodar") ) {
echo "is select town krasnodar";
}
else {
echo "not town krasnodar";
}

сам файл с формой
<form method="post" action="basetown.php">
<select>
<input selected >PLEASE SELECT TOWN</input>
<input value=krasnodar>krasnodar</input>
<input value=moskow>moskow</input>
</select>
</form>

вот задача , выбрал краснодар onchange, передалось значение krasnodar
как это организовать, вот вопрос.
на onchange="this.options[this.selectedIndex].value" очень плохо понимаю яву, вобщем не буду писать чтоб не запутать, выше задача описана.

Добавлено через 1 час 4 минуты
onchange="this.form.submit()";

echo $_POST['town']


я ж говорю чего там мудрить в простейшей задаче.
0
27 / 27 / 5
Регистрация: 03.01.2011
Сообщений: 85
20.10.2011, 17:42 10
yok, если не стоит задача отправлять данные без перегрузки страницы, то можно вот таким корявым способом :
HTML5
1
2
3
4
5
6
7
8
9
10
<html>
<body>
<form action="" method="get">
    <select name="some_select" onchange="this.form.submit()">
        <option value="1">1</option>
        <option value="2">2</option>
    </select>
</form>
</body>
</html>

ну, а если по-нормальному делать, то так как предложил товарищ radist_gla


UPD пока писал пост вы уже и сами додумались )

А зачем вы в select инпуты пихаете О_о, там вообще option'ы должны быть
0
0 / 0 / 1
Регистрация: 24.11.2010
Сообщений: 44
21.10.2011, 09:00  [ТС] 11
Mgauk, да это я писал тут не копировал, и по запарке инпуты написал.
В моем случае мне достаточно и необходимо было только отправить значение из формы. т. е.
this.form.submit() это самое то.
Именно его я и искал. Кнопка submit в дизайне не вязалась.
0
0 / 0 / 1
Регистрация: 26.10.2011
Сообщений: 4
26.10.2011, 12:59 12
У меня схожая проблема по этому пишу в данной тебе чтобы не плодить похожие.
При выборе даты переходит на новую страницу, а нужно чтобы данные обновлялись без перехода. Помогите пожалуйста. очень срочна нужно.
PHP
1
Выбери дату:&nbsp;<select size=1 name=den_nedeli onChange=\"javascript:parent.document.location='index.php?action=tv&den_ned='+this.options[this.selectedIndex].value;\">";
0
0 / 0 / 1
Регистрация: 24.11.2010
Сообщений: 44
26.10.2011, 17:20  [ТС] 13
onChange="myfunc(this)"

<script>
function myfunc(x) {
document.getElementById('cellid').style.background=x.value;

<td id="cellid">

это я делал для для параметра селя, как значение вставить какое
что то было типа
document.cellid.innerHTML=x.value

извини не помню, а вот как можно
<div id="cellid"></div>
и тогда скрипт заработает и в див вставится значение которое выберешь из селекта.

Добавлено через 15 минут
Да, даа да чуть доработать надо
в скрипте
cellid.innerHTML=k;
где к это из селекта надо взять,
onchange="myfunc(this.options[this.selectedIndex].value)"
проверено работает передается в div id
0
0 / 0 / 1
Регистрация: 26.10.2011
Сообщений: 4
28.10.2011, 12:32 14
Цитата Сообщение от yok Посмотреть сообщение
onChange="myfunc(this)"

<script>
function myfunc(x) {
document.getElementById('cellid').style.background=x.value;

<td id="cellid">

это я делал для для параметра селя, как значение вставить какое
что то было типа
document.cellid.innerHTML=x.value

извини не помню, а вот как можно
<div id="cellid"></div>
и тогда скрипт заработает и в див вставится значение которое выберешь из селекта.

Добавлено через 15 минут
Да, даа да чуть доработать надо
в скрипте
cellid.innerHTML=k;
где к это из селекта надо взять,
onchange="myfunc(this.options[this.selectedIndex].value)"
проверено работает передается в div id
Спасибо большое за совет сейчас проверю и отпишусь о результате

Добавлено через 22 минуты
yok Если я правильно понимаю то код должен выглядеть так? Если нет то помоги исправить очень нужно.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<tr id="cellid" valign=top>
    <td bgcolor=$light_color width=100%>
 
";
echo "<form name=\"dni\" action=\"\" method=\"post\">
Выбери дату:&nbsp;<select size=1 name=den_nedeli onChange=\"myfunc(x)\">";
 
<script>
function myfunc(x) {
document.getElementById('cellid').style.background=x.value;
document.cellid.innerHTML=x.value
cellid.innerHTML=k;
</script>
 
<div id="cellid"></div>
 
if ($dir = @opendir("data")) {
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.10.2011, 12:32
Помогаю со студенческими работами здесь

select = фото / без кнопки
Доброе утро. Мужики нужна помощь, есть select, в него загружаются названия файлов, из выбранного...

Альтернатива кнопки сабмит
Скажите пожалуста, как сделать, чтоб форма отправлялась при щелчке на ссылку (ну там текст или...

Передача параметров без редиректа
Доброго времени суток. вопрос состоит в следующем. Как сделать отправку данных с моего сайта на...

Альтернатива кнопки сабмит, существует ли?
Скажите, как сделать, чтоб форма отправлялась при нажатии на ссылку. Т.е. чтоб ссылка работала как...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru