Форум → Программирование → Пыхнуть хотите? → F.A.Q. → Интерактивный select без перезагрузки страницы
Интерактивный select без перезагрузки страницы
Страницы: ← Предыдущая страница • Следующая страница →
-
27 июля 2009 г. 2:42, спустя 5 минут 2 секунды
GRAFLEKX, я раньше использовал прототайп… и jshttpdrequest, и могу сказать - лучше используйте jquery (либо dojo и extjs).
Приведите код, авось и поможемhttps://smappi.org/ - платформа по созданию API на все случаи жизни -
27 июля 2009 г. 3:06, спустя 23 минуты 46 секунд
Да понимаете, много уже завязано на Прототайпе, переделывать как серпом по одному месту. Код, да код простой, почти как в примере..
Есть файл с селектом:<form action="select.php" method="POST">
<select name="country">
<option value="no" selected>Выберите страну…</option>
<option value="russia">Россия</option>
<option value="ukraine">Украина</option>
</select>
<br><br>
<div id="result"></div>
<br><br>
<input type="submit" value="Отправить">
</form>
Нужно чтобы при выборе селекта <div id="result"></div> выводил инфу из второго файла selekt2.phpcase "russia":
$html="<select name=\"provider\">
<option>МТС</option>
<option>Билайн</option>
<option>Мегафон</option>
</select>";
break;
case "ukraine":
$html="<select name=\"provider\">
<option>KievGSM</option>
<option>UKRGSM</option>
</select>";
break;
default: $html=null;
endswitch;
echo $html;
Тоесть все тоже самое как в примере, но на Прототайпе.
Там правда у меня еще запросы в мускул идут, но это уже лишнее, я сам сделаю. Проблема в том, что не силен я в JS, понимаю что мат часть учить нужно, да все руки ни как не доходят. Вот разгребу немного и засяду учить.
Дело в том, что при подключении библиотеки Котерова, у меня даже элементарный JS перестал работать:function calculater_in(){
document.main.in_val.value=document.main.in_val.value.replace(",",".");
document.main.out_val.value=Math.floor(document.main.in_val.value*document.main.curs.value*100)/100;}
function calculater_out(){
document.main.out_val.value=document.main.out_val.value.replace(",",".");
document.main.in_val.value=Math.ceil(document.main.out_val.value/document.main.curs.value*100)/100;} -
27 июля 2009 г. 3:36, спустя 30 минут 7 секунд
GRAFLEKX, а вы пробовали юзать JsHttpRequest-prototype.js ?https://smappi.org/ - платформа по созданию API на все случаи жизни -
27 июля 2009 г. 3:40, спустя 4 минуты 14 секунд
Да, пробовал, беспонтово. Некоторые функции начинают работать, но в основном прототайп глохнет. При том, если подключить прототайп перед библиотекой Котерова, то глохнет его скрипт.
GRAFLEKX, а вы пробовали юзать JsHttpRequest-prototype.js ?
На форуме у них тоже отмалчиваются на этот счет. При том такой баг не только у меня, там много народа на это жалуется, обещают пофиксить в следующей версии. -
27 июля 2009 г. 3:52, спустя 11 минут 57 секунд
GRAFLEKX, я не понимаю, как мы можем помочь, если проблемы у библиотеки котерова или у прототайпа?
Исправить их баги нам надо?) Предлагаю заюзать jQuery для AJAX, исключив jshttprequest
И еще, расскажите как именно ошибки проявляются? Ajax не работает? или прототайпжс валится?https://smappi.org/ - платформа по созданию API на все случаи жизни -
27 июля 2009 г. 4:06, спустя 14 минут 2 секунды
У прототайпа проблем нет, все работало до того как я подключил библиотеку Котерова и реализовал с её помощью подгрузку с другого файла (как в примере в этой статье.).
Подгрузка работает, но все что работало на прототайпе - перестало работать.
Соответственно библиотеку Котерова я отключил и хочу реализовать подгрузку данных (код файлов привел выше) средствами прототайпа, а вот КАК это сделать увы не знаю.И еще, расскажите как именно ошибки проявляются? Ajax не работает? или прототайпжс валится?
вот именно что прототайпжс падает.
В частности перестают работать new Ajax.Updater…
Вы меня не поняли, мне не нужно исправлять баги в библиотеке Котерова :))), я её отключил, я прошу помочь реализовать на прототайпе пример http://pyha.ru/forum/topic/86.msg61522#msg61522 -
27 июля 2009 г. 4:10, спустя 3 минуты 40 секунд
То есть вам надо организовать ajax только с помощью prototypejs. Я сам не юзал ajax в прототайп, и не имею сейчас его под рукой, поэтому вы буде проверять у себя.
Начнем с документации http://www.prototypejs.org/learn/introduction-to-ajax тут вроде все просто, вы уже это сделали? Есть ошибки?Спустя 48 сек.http://www.prototypejs.org/api/ajax/requesthttps://smappi.org/ - платформа по созданию API на все случаи жизни -
27 июля 2009 г. 5:37, спустя 1 час 26 минут 39 секунд
То есть вам надо организовать ajax только с помощью prototypejs. Я сам не юзал ajax в прототайп, и не имею сейчас его под рукой, поэтому вы буде проверять у себя.
Начнем с документации http://www.prototypejs.org/learn/introduction-to-ajax тут вроде все просто, вы уже это сделали? Есть ошибки?Спустя 48 сек.http://www.prototypejs.org/api/ajax/request
Спасибо, я знаю сайт автора прототайпа :))), почитаю на досуге, мануал всегда полезен.
Тупанул я конечно сильно, но съел шоколадку, выпил апельсинового сока - мозги включились (не сплю просто уже 3-и сутки) и сделал.
Проще некуда, за что я и люблю прототайп. Вариант такой:
файл select.php:echo "<script src=\"прототип.js\"></script>"
."<script>"
."function doload(value){\n"
."new Ajax.Updater('selekt', 'select2.php', {parameters: { country: value }});}\n"
."</script>"
."<select name=\"country\" onchange=\"doload(this.value);\">"
."<option value=\"no\" selected>Выберите страну…</option>"
."<option value=\"russia\">Россия</option>"
."<option value=\"ukraine\">Украина</option>"
."</select>"
."<br><br>"
."<div id=\"selekt\"></div>";
файл select2.php:switch($_REQUEST["country"]):
case "russia":
$html="<select name=\"provider\">
<option>МТС</option>
<option>Билайн</option>
<option>Мегафон</option>
</select>";
break;
case "ukraine":
$html="<select name=\"provider\">
<option>KievGSM</option>
<option>UKRGSM</option>
</select>";
break;
default: $html=null;
endswitch;
echo $html;
Вот собственно и все, без лишних наворотов…
Можно конечно и через new Ajax.Request, но мне это не нужно…
Спасибо за помощь… -
27 июля 2009 г. 5:40, спустя 2 минуты 52 секунды
GRAFLEKX, а я не люблю прототайп, за то, что он тормознутый. И jq проще него пожалуй…https://smappi.org/ - платформа по созданию API на все случаи жизни -
27 июля 2009 г. 5:46, спустя 6 минут 10 секунд
Ес
GRAFLEKX, а я не люблю прототайп, за то, что он тормознутый. И jq проще него пожалуй…
Есть тормоза, не спорю, но для моих данных и целей вполне подходит.
jQuery интересная библиотека, встречался с ней, но небыло времени разобраться, как нибудь займусь ей обязательно. -
27 июля 2009 г. 5:47, спустя 59 секунд
ты многое потерял…
Ес
GRAFLEKX, а я не люблю прототайп, за то, что он тормознутый. И jq проще него пожалуй…
Есть тормоза, не спорю, но для моих данных и целей вполне подходит.
jQuery интересная библиотека, встречался с ней, но небыло времени разобраться, как нибудь займусь ей обязательно. -
27 июля 2009 г. 17:52, спустя 12 часов 4 минуты 57 секунд
GRAFLEKX, возьми отсюда: http://akosta.info/jscripts/search.js
столет назад делалвсе умрут, а я изумруд -
15 августа 2009 г. 5:46, спустя 18 дней 11 часов 54 минуты
Подскажите, а как сделать что бы скрипт выполнялся по нажатию кнопки:
типа
<input type="submit" value="Отправить" onclick="Капец, что тут написать?"> -
15 августа 2009 г. 5:49, спустя 2 минуты 21 секунду
какой скрипт?
там можно функцию прописать типа onclick="StartCode();"…все умрут, а я изумруд -
15 августа 2009 г. 5:59, спустя 10 минут 6 секунд
бля не так вопрос задал ))
вобщем в яваскрипте полный ноль, надо что бы по событию onclick на кнопке заработала функция doload(). Так вот нифига не могу сообразить что внутри в скобках написать.
Страницы: ← Предыдущая страница • Следующая страница →
Пожалуйста, авторизуйтесь, чтобы написать комментарий!